TikZ 的外部化和 mylatex

TikZ 的外部化和 mylatex

我知道我很贪心...

我已经尝试了很长时间才能让 TikZ 的外部化功能与mylatex,没有任何运气。

我的文档目前看起来像

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{external}
\tikzexternalize{filename}
\begin{document}
Some text.
\end{document}

我首先用

pdfetex -shell-escape --output-format pdf --jobname=filename-pdf --ini \&latex mylatex.ltx filename.tex

它会创建一个filename-pdf.fmt格式文件,然后我会使用它

latex -shell-escape --output-format pdf &filename-pdf filename.tex

如果我删除两行涉及外部化的代码,这个方案就可以正常工作。有了它们,就不会生成任何输出。(如果\tikzexternalize{filename} 我说\tikzexternalize第二次运行使用filename-pdf作为用于编译外部化图像的 pdflatex 运行的作业名,则不起作用……)

有任何想法吗?

答案1

这里的问题是格式文件和主文档的作业名称不同。要解决这个问题,只需将格式文件命名filename.fmt为 而不是filename-pdf.fmt,一切就都好了:

文件名.tex

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{external}
\tikzexternalize{filename}
\begin{document}
Some text.
\end{document}

使用以下方式编译格式文件

pdfetex -shell-escape --output-format pdf --jobname=filename --ini \&latex mylatex.ltx filename.tex

这将创建filename.fmt。之后,使用以下命令运行文档的编译

latex -shell-escape --output-format pdf &filename 文件名.tex

相关内容