Com documentos espalhados por vários projetos do Overleaf

Com documentos espalhados por vários projetos do Overleaf

Sou novo no Latex e atualmente estou usando o Overleaf para gerenciar meus arquivos Latex. Aqui está o meu problema: tenho vários projetos no Overleaf, cada um sobre um tópico específico. Quero criar outro projeto que de alguma forma leia todos os outros projetos e obtenha o número de páginas de cada projeto (páginas do arquivo PDF associado). Este novo projeto serve como um contador de páginas, monitorando a duração de todos os outros projetos. Existe uma maneira simples de fazer isso?

Além disso, se isso for inviável no Overleaf, mas simples no Texstudio ou em qualquer editor de texto local, por favor, deixe-me agora

Responder1

Em qualquer sistema TeX moderno, supondo que você esteja usando o mecanismo pdfTeX (que é o padrão no Overleaf), você pode imprimir o número de páginas de um arquivo PDF externo com uma macro como esta:

\def\numberofpages#1{\pdfximage{#1}\the\pdflastximagepages}

onde o argumento é o caminho relativo para o arquivo PDF em questão. Existem versões para outros motores emObtenha o número de páginas do PDF externo. Esta parte não é específica do Overleaf, você pode usá-la em sua própria distribuição local do TeX, se desejar.


Com documentos espalhados por vários projetos do Overleaf

O truque no Overleaf (divulgação completa: faço parte da equipe de suporte do Overleaf.) acessará o arquivo PDF de seu(s) outro(s) projeto(s) dentro do seu projeto de resumo que está contando as páginas (vamos chamá-lo de projeto de resumo). Isso pode ser feito incluindo os arquivos de saída de outros projetos como novos arquivos em seu projeto de resumo.

Eu não recomendaria fazer isso, porque depende de lembrar de manter todos os arquivos externos atualizados.Mas se você realmente precisar fazer isso, isso pode ser feito.

Abra o projeto resumido e escolha "Novo arquivo" -> "De outro projeto". Em seguida, selecione o projeto cujas páginas deseja contar. No menu suspenso "Selecionar um arquivo", clique em "selecionar arquivos de saída" e escolha output.pdf.

insira a descrição da imagem aqui

Em seguida, escolha um nome adequado para o arquivo PDF de saída no projeto de resumo. (Isso terá que ser exclusivo se você quiser contar as páginas de várias páginas externas.)

Em seguida, defina a \numberofpagesmacro listada acima em algum lugar no preâmbulo do seu projeto de resumo. Digamos que eu traga um PDF externo com um nome de arquivo PaperA.pdfe posso imprimir seu número de páginas em qualquer lugar do projeto de resumo com

\numberofpages{PaperA.pdf}

A ressalva é que conforme você edita seu(s) outro(s) projeto(s) e retorna ao projeto de resumo, você precisa se lembrar de "Atualizar" cada um dos seus arquivos PDF externos com o botão que aparecerá em cada arquivo PDF externo que você adicionar ao resumo projeto:

insira a descrição da imagem aqui

Devido à arquitetura do Overleaf, não é possível que esses arquivos externos sejam atualizados automaticamente à medida que o outro projeto muda. Isso deve ser feito manualmente com o botão "Atualizar".


Com vários documentos em um único projeto Overleaf

Se você tiver vários documentos em um único projeto Overleaf, isso poderá ser feito de forma mais automática com alguma combinação de xrcódigo semelhante a - e esta \numberofpagesmacro ou lastpagecomo John mencionou em um comentário. Mas também existem outras desvantagens desse método no Overleaf, dependendo exatamente do que você tem em cada um desses outros documentos. Referir-sePosso escolher qual arquivo é o arquivo tex principal em um projeto no Overleafpara obter mais informações sobre como compilar vários documentos em um único projeto Overleaf.

Se você acabar consolidando vários documentos em um projeto Overleaf, este artigo de ajuda mostra como usar um latexmkrcarquivo no Overleaf para acionar outros arquivos a serem compilados em um único projeto Overleaf:Referência cruzada com o pacote xr no Overleaf. Esse artigo fala sobre isso em termos de utilização do xrpacote, mas o mesmo tipo de abordagem poderia ser utilizado para obter um PDF atualizado na área de arquivos de saída do projeto, para utilizar com a \numberofpagesmacro descrita acima.

informação relacionada