使用独立包包含子目录中的图片

使用独立包包含子目录中的图片

在广泛使用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}在我看来唯一仍然存在的问题是,在从属进程的序言中使用外部样式表时。

相关内容