在广泛使用standalone
软件包之后,我遇到了一个无法解决的问题。问题是我需要在主文件子目录中包含一个 TikZ 图片。更重要的是,我想用 standalone 构建它mode = buildnew
。考虑以下文件树:
/mwe.tex
/sub/mwefig.tex
文件mwe.tex
包含以下内容:
\documentclass{article}
\usepackage{standalone}
\usepackage{tikz,pgfplots}
\standaloneconfig{mode=buildnew}
\pgfplotsset{compat=newest}
\begin{document}
Time is money!
\includestandalone{sub/mwefig}
\end{document}
该文件mwefig.tex
包含以下代码:
\documentclass{standalone}
\usepackage{tikz,pgfplots}
\pgfplotsset{compat=newest}
\begin{document}
\begin{tikzpicture}
\draw (0,0) circle (2);
\end{tikzpicture}
\end{document}
执行之后mwe.tex
我希望mwefig.tex
被构建,这将导致在目录mwefig.pdf
中创建文件/sub/
,然后可用于以后的编译。
我得到的是一个警告:Package standalone Warning: Graphic 'sub/mwefig.pdf' could not be build.
尽管如此,生成的主 PDF 包含所需的图形。
我还注意到,该mwefig.pdf
文件实际上已经创建,但是在单独的目录中并且名称不同:
/sub'/mwefig'.pdf
因此,编译后我得到以下文件树(不包括辅助文件和日志文件):
/mwe.tex
/mwe.pdf
/sub/mwefig.tex
/sub'/mwefig'.pdf
我可能用错了什么,所以如果有人能提供任何关于如何解决这个问题的提示,我将不胜感激。(注意:--enable-write18
已启用,MikTex 2.9)
答案1
该问题似乎在1.1b版本中得到了解决:
\documentclass{article}
\usepackage{standalone}
\standaloneconfig{mode=buildnew}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{filecontents}
\begin{filecontents*}{Documents/test_standalone_slave.tex}
\documentclass{standalone}
\usepackage{tikz,pgfplots}
\pgfplotsset{compat=newest}
\begin{document}
\begin{tikzpicture}
\draw (0,0) circle (2);
\end{tikzpicture}
\end{document}
\endinput
\end{filecontents*}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{tikz,pgfplots}
\pgfplotsset{compat=newest}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
That's it!
\includestandalone{Documents/test_standalone_slave}
\end{document}
\input{macros.tex}
在我看来唯一仍然存在的问题是,在从属进程的序言中使用外部样式表时。