梅威瑟:

梅威瑟:

撰写我的学士论文(不幸的是,我们被告知要使用 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

对于我的论文,我使用了以下步骤:

  1. 创建一个header_fig.tex包含所有软件包(例如或我的图片或设置所需的\usepackage{...}库)的文件,例如或\usetikzlibrary{...}\tikzset{...}\pgfplotsset{}
  2. .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如果你的所有论文图片都有一个复杂的目录树,则该包会避免使用相对路径

  1. 如果要修改全局设置,只需在header_fig文件中更改即可
  2. 如果你想重新编译所有的图片,使用系统for-looparara调用Arara 规则用于自动编译目录树中的所有文件例如。

此过程允许为所有图片创建单独的文件.tikz,但.pdf具有全局设置。如果您想加快编译速度,您仍然可以在相关图片的序言中添加非常具体的库。

相关内容