
Acabei de receber alguns arquivos tex onde existe um booleano definido no início do documento com o pacote etoolbox. Alterar o booleano produz um pdf ligeiramente diferente. Para produzir a outra versão do documento, tenho que copiar o primeiro pdf para não sobrescrevê-lo ao compilar novamente, alterar o booleano e depois compilar uma segunda vez. Existe uma maneira de compilar o documento duas vezes com o booleano definido como verdadeiro e falso separadamente e receber dois PDFs?
Muito obrigado!
Responder1
No meu ambiente tenho algo semelhante, por isso uso dois arquivos .tex, um como
\documentclass[a4paper,twoside,DIV12,BCOR1.5cm]{scrbook}
%
\osversiontrue
\input{main.tex}
e um como
\documentclass[a4paper,twoside,DIV12,BCOR1.5cm]{scrbook}
%
\input{main.tex}
e um main.tex que contém todo o resto, tudo começando \begin{document}
e terminando com \end{document}
.
Quando compilo os dois arquivos wrapper, dois documentos PDF são criados. As diferenças entre os dois documentos são abordadas pelo booleano osversion
.
Responder2
Veja tambémaquicomo passar argumentos para o arquivo tex. É apenas uma solução diferente.
No entanto, você terá que compilar duas vezes, pois uma chamada para pdflatex/.. criará apenas um único PDF.
Criar as duas versões de uma só vez, resultando em um PDF e dividi-lo no 'meio' provavelmente não é mais conveniente.
A última opção que consigo pensar é verificar a existência de um arquivo para determinar o booleano e criar/excluir esse arquivo entre as duas execuções do pdflatex.