撰写我的学士论文(不幸的是,我们被告知要使用 MS Word)我使用 Tikz 来创建我的图表。由于我有多个 tikz 文件,因此我使用独立包为每个文件创建一个 .pdf。
但是,当我现在改变字体大小或字体样式时,我必须手动重新编译每张图片。
我知道您可以在独立程序中编译多个 tikz 文件,这样做会得到 10 页,每页一个图。问题是它们存储在一个 pdf 文件中。
独立版是否有可能为每个图创建一个单独的文件?此外,如果我可以为这些文件设置名称以便以后识别它们,那就太好了。
梅威瑟:
\documentclass[tikz,multi=true]{standalone}
\begin{document}
\begin{tikzpicture}
\node{Picture 1};
\end{tikzpicture}
## here I want to break the file to create seperate file with name=picture 2
\begin{tikzpicture}
\node{Picture 2};
\end{tikzpicture}
\end{document}
图片:
编辑
在实施了 Ross 的解决方案之后,它似乎做了我想要做的事情,但出现了错误:
\documentclass[tikz, multi=true]{standalone}
\usetikzlibrary{external}
\tikzexternalize[prefix=figures/]
\begin{document}
\tikzsetnextfilename{importantFigure}
\begin{tikzpicture}
\node{Picture 1};
\end{tikzpicture}
\tikzsetnextfilename{anotherimportantFigure}
\begin{tikzpicture}
\node{Picture 2};
\end{tikzpicture}
\end{document}
我的错误是:
但是图片被打印出来并存储在一个文件中。但重新运行代码仍然会出现错误,图片也没有更新。
答案1
对于我的论文,我使用了以下步骤:
- 创建一个
header_fig.tex
包含所有软件包(例如或我的图片或设置所需的\usepackage{...}
库)的文件,例如或\usetikzlibrary{...}
\tikzset{...}
\pgfplotsset{}
.tikz
使用以下格式在单独的文件中创建一个或多个 tikz 图片
\documentclasse[tikz]{standalone}
\usepackage{import}
\import{absolute/path/to/the/header_fig/file}
\begin{document}
\begin{tikzpicture}
<All of your favorite tikz code>
\end{tikzpicture}
\end{document}
import
如果你的所有论文图片都有一个复杂的目录树,则该包会避免使用相对路径
- 如果要修改全局设置,只需在
header_fig
文件中更改即可 - 如果你想重新编译所有的图片,使用系统
for-loop
或arara
调用Arara 规则用于自动编译目录树中的所有文件例如。
此过程允许为所有图片创建单独的文件.tikz
,但.pdf
具有全局设置。如果您想加快编译速度,您仍然可以在相关图片的序言中添加非常具体的库。