【问题标题】:Latex, TikZ and separate compilation of chapters and figuresLatex、TikZ 以及章节和图的单独编译
【发布时间】:2011-03-15 23:56:09
【问题描述】:

我有相当大的 Latex 文档,里面有很多 TikZ 人物。我有频繁重新编译的习惯,使用 pdflatex 编译它需要很长时间。 TikZ 中的数字占用了大部分时间。

我的问题是将文档拆分为单独的tex文件(图形/章节)以实现图形和章节的单独编译,单独的章节pdf和整个文档pdf文件的最佳方法是什么?

【问题讨论】:

    标签: latex build build-process pdflatex tikz


    【解决方案1】:

    您是否尝试过自己编译每张图片,然后将它们作为 pdf 而不是 tikz 代码包含在您的 tex 文件中?您可以单独使用该包,这样图片将是您需要的确切尺寸。所以:

    \documentclass{standalone}
    
    \usepackage{tikz,pgf} %and any other packages or tikzlibraries your picture needs
    
    \begin{document}
    
    \begin{tikzpicture}
    
    %your tikz code here
    
    \end{tikzpicture}
    
    \end{document}
    

    这样做的好处是,您可以直接包含编译此文档以获取要包含在您的文档中的 pdf 图,或者您可以使用命令 \input 将其作为 tikz 代码包含在您的主文档中添加

    \usepackage{standalone}
    

    在您的主文档中(连同 tikz 包和库),然后

    \begin{figure}
    \input{tikzfile.tex}
    \end{figure}
    

    【讨论】:

      【解决方案2】:

      缓存 tikz-pictures 可能有更好的方法(恕我直言)。在您的 序言:

      \usetikzlibrary{external}
      \tikzexternalize[prefix=i/]
      

      运行 pdflatex 后,您将在子目录 ./i 中看到所有图片。 如果您更新 tikz-picture 的代码,只需丢弃其相应的 pdf 文件,它将重新生成。有关更多信息,请参阅 PFG/TikZ 手册部分 32.4 Externalizing Graphics 并且可能 32.5 在未安装 pgf 的情况下使用外部图形

      【讨论】:

        【解决方案3】:

        如何将每一章放在一个单独的文件中,然后使用\include 将它们放入某个主文件中?然后您可以使用\includeonly 仅编译您当前正在编写的章节。这样至少可以节省一些时间。

        我希望某种基于 makefile 的解决方案会比这更好,但我对 makefile 一无所知...

        【讨论】:

          【解决方案4】:

          我通常这样做的方式是将 Latex 应用于文件的一部分:Emacs 和其他几个 Latex 编辑器允许您编译区域:使用 Auctex,您可以运行 TeX-pin-region 来指定当前章节,并且然后 TeX-command-region 在所选区域上运行 Latex。

          执行此操作的传统方法是将大文件的一部分切成\included 的较小部分,然后注释掉您不想处理的部分,或者在开头和结尾放置一些宏观允许它们单独编译的每个文件。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2018-06-16
            • 1970-01-01
            相关资源
            最近更新 更多