在 TeXLive 2015 中将 tikz 的 chain 包用作独立包

在 TeXLive 2015 中将 tikz 的 chain 包用作独立包

我正在尝试将 中的一个简单chain用法示例包含到tikz我用 编译的文档中TeXLive

问题是,当我尝试创建链时,出现编译错误:

Package standalone Warning: Graphic '../tikz/5_40_video_tree.pdf' could not be 
build.
Shell escape activated? on input line 393.

(./5_main/../tikz/5_40_video_tree.tex

! Package pgfkeys Error: I do not know the key '/tikz/start chain', to which yo
u passed '1 going right', and I am going to ignore it. Perhaps you misspelled i
t.

See the pgfkeys package documentation for explanation.
Type  H <return>  for immediate help.
 ...                                              

l.12 ...chain=1 going right,node distance=-0.15mm]

? 
! Emergency stop.
 ...                                              

l.12 ...chain=1 going right,node distance=-0.15mm]

!  ==> Fatal error occurred, no output PDF file produced!
Transcript written on index.log.

所附文件是图灵机例子:

\documentclass{standalone}

\usepackage[latin1]{inputenc}
\usepackage{tikz}
\usetikzlibrary{chains,fit,shapes}

\begin{document}

\begin{tikzpicture}
\tikzstyle{every path}=[very thick]

\begin{scope}[start chain=1 going right,node distance=-0.15mm]
    \node [on chain=1,draw=none] {$\ldots$};
    \node [on chain=1] {};
    \node [on chain=1] (input) {b};
    \node [on chain=1] {b};
    \node [on chain=1] {a};
    \node [on chain=1] {a};
    \node [on chain=1] {a};
    \node [on chain=1] {a};
    \node [on chain=1] {};
    \node [on chain=1,draw=none] {$\ldots$};
\end{scope}

\end{tikzpicture}

\end{document}

我通过

\begin{figure}[h]
  \centering
  \includestandalone[mode=buildnew]{../tikz/5_40_video_tree}
\end{figure}

TikZ 和 TeXLive 确实可以正常工作:我已经通过这种方式包含了另一个 TikZ 文档,它们使用了绘图和树。此外,示例图像可以单独编译为 PDF,因此问题是如何将其包含到我的文档中而无需单独编译。

答案1

为了使所附文档中的代码正常工作,需要执行以下两件事之一。

确保所有必需的包和库都已加载到主文档的序言中。

或者看看subpreambles的选项standalone。如果你使用这个,standalone将尝试弄清楚需要包含什么。

就我个人而言,我总是使用第一种方法,因为它让我更清楚自己在做什么,而且出错的可能性也更小!

相关内容