
学士論文を書いているとき (残念ながら MS Word を使用するように言われています)、図の作成に Tikz を使用しています。tikz ファイルが複数あるため、スタンドアロン パッケージを使用して各ファイルの .pdf を作成しています。
しかし、たとえばフォント サイズやフォント スタイルを変更する場合は、すべての画像を手動で再コンパイルする必要があります。
スタンドアロン内で複数の tikz ファイルをコンパイルできることは知っていますが、そうすると、それぞれに 1 つの図がある 10 ページが作成されます。問題は、それらが 1 つの pdf ファイルに保存されることです。
スタンドアロンで各図に個別のファイルを作成できる可能性はありますか? さらに、後で認識できるようにそれらのファイルの名前を設定できれば便利です。
MWE:
\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{}
.tikz
次の形式で、1つまたは複数の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
、コンパイルを高速化したい場合は、関連する写真のプリアンブルに非常に具体的なライブラリを追加することもできます。