我偶然发现了 tikz 的一个奇怪行为。这是一个简单的例子:
\documentclass[parskip]{scrartcl}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node{
\tikz[remember picture] \coordinate (a);
$1+2$
\tikz[remember picture]\coordinate (b);
};
\begin{scope}
\draw (a.south west) -- (b.south east);
\end{scope}
\end{tikzpicture}
\end{document}
每次我编译它时,pdflatex
生成的 pdf 都有不同的页数......它在 1 页和 3 页之间交替。
编译总是给我以下警告:
LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right.
最小的例子改编自 Alain Matthes 的回答这次讨论。这种行为也发生在他的代码中。
这是正常的吗?如果不正常,我可以修复它吗?我想像上一个链接中一样,在数学表达式的一部分下做一个括号,并在括号下添加文本。与链接中提出的问题的不同之处在于,括号下的文本大小不应影响数学表达式(这就是我考虑 Alain Matthes 的答案的原因)。
答案1
这是我们所期望的结果吗?(见贾斯珀·哈比希特的评论:不要堆叠tikz
环境。)
代码
\documentclass[parskip]{scrartcl}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node (a) {$1+2$};
\draw (a.south west) -- (a.south east);
\end{tikzpicture}
\end{document}