Я только что получил несколько tex-файлов, в которых в начале документа с помощью пакета etoolbox определено логическое значение. Изменение логического значения приводит к немного другому pdf-файлу. Чтобы создать другую версию документа, мне нужно скопировать первый pdf-файл, чтобы не перезаписать его при повторной компиляции, изменить логическое значение и затем скомпилировать второй раз. Есть ли способ скомпилировать документ дважды с логическим значением true и false по отдельности и получить два pdf-файла?
Большое спасибо!
решение1
В моей среде есть что-то похожее, поэтому я использую два файла .tex, один из которых выглядит так:
\documentclass[a4paper,twoside,DIV12,BCOR1.5cm]{scrbook}
%
\osversiontrue
\input{main.tex}
и один как
\documentclass[a4paper,twoside,DIV12,BCOR1.5cm]{scrbook}
%
\input{main.tex}
и main.tex, содержащий все остальное, все, что начинается с \begin{document}
и заканчивается на \end{document}
.
Когда я компилирую оба файла-обертки, создаются два документа pdf. Различия между двумя документами решаются с помощью булевой переменной osversion
.
решение2
Смотрите такжездеськак передать args в tex-файл. Это просто другое решение.
Однако вам придется выполнить компиляцию дважды, поскольку один вызов pdflatex/.. создаст только один PDF-файл.
Создание обеих версий за один раз, в результате чего получается один PDF-файл, и разделение этого PDF-файла «посередине», вероятно, не является более удобным.
Последний вариант, который приходит мне в голову, — проверить существование файла, чтобы определить логическое значение и создать/удалить этот файл между двумя запусками pdflatex.