是否有支持书籍并行编译的 latex 编译器?例如,多部分 latex 文档中的章节可以在单独的核心上进行编译,以加快编译速度:
\begin{document}
\pagestyle{plain}
\onehalfspacing
\frontmatter
\include{title}
\include{abstract}
\mainmatter
\include{chapter1}
\include{chapter2}
...
\include{chapterN}
\begin{appendices}
\include{appendices}
\end{appendices}
\backmatter
\bibliographystyle{unsrt}
\bibliography{references}
\end{document}
答案1
可能没有支持并行编译的 latex 编译器。
简短的原因是:LaTeX 排版文档的方式本质上是线性的。如果 LaTeX 并行排版不同的文档部分,则需要在编译时合并它们。但是,要获得与非并行情况相同的结果,您需要对已排版的部分进行编译以正确连接它们(分页符、表格编号等)。因此,您最终的编译时间可能与以前相同或更差。
答案2
例如,页码通常不是独立的。第二章的页码取决于第一章的页码。还可以有参考文献、索引条目……
如果在开始新章节时重置所有相关计数器(page
、figure
、table
、equation
、 ...),则可以尝试\include
/\includeonly
单独编译章节。例如,章节位于单独的文件中,输入方式为\include
:
% test.tex
\documentclass{...}
...
\begin{document}
\include{chap1}
\include{chap2}
...
\end{document}
\includeonly
可以在命令行中给出(-draftmode
如下所述):
pdflatex -draftmode '\includeonly{chap1}\input{test}'
pdflatex -draftmode '\includeonly{chap2}\input{test}'
...
在最后一次运行中,完整文档包含所有章节:
pdflatex test
获得包含所有章节的完整输出文件。否则,章节 PDF 的合并将变得非常困难,因为章节间存在引用、书签等...
索引和参考书目通常是独立生成的。因此makeindex
/xindy
或bibtex
/biber
可以在两个并行过程中调用。
-draftmode
除最后一次运行外,第一次运行 LaTeX 时使用 可以节省(相当)少许时间。使用选项-draftmode
不会写入输出 PDF/DVI 文件,但所有辅助文件(.aux
、.toc
、...)都会照常创建。