以下文件
\documentclass[11pt,a4paper]{report}
\usepackage{tikz}
\usetikzlibrary{shapes}
\usetikzlibrary{arrows}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}[remember picture]
\node [draw] (a) {%
\begin{tabular}{l}
line 1 \\
line 2
\begin{tikzpicture}[remember picture]
\coordinate (line2);
\end{tikzpicture}
\\
line 3 \\
line 4 \\
\end{tabular}
};
\node [draw, right=5cm of line2] (a) {a};
\draw (line2) -- (a);
\end{tikzpicture}
\end{document}
当我使用 将其编译为 PDF 时,与pdflatex
使用 相比,会产生不同的结果。dvips
ps2pdf
例如,这里是产生的(预期)数字pdflatex
:
dvips
这是由和产生的(错误)图形ps2pdf
:
为什么会这样?我该如何修复它,以便结果总是像产生的结果一样pdflatex
?
答案1
这是 TikZ/pgf 的一个错误,remember picture
通过latex-dvips-ps2pdf
...
在这种特殊情况下,该matrix
库提供了一种优雅的解决方法(通过pdflatex
和通过工作latex-dvips-ps2pdf
):
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{positioning}
\usetikzlibrary{matrix}
\begin{document}
\begin{tikzpicture}[remember picture]
\matrix [draw,matrix of nodes] (m){
line 1 \\ % node m-1-1
line 2 \\ % node m-2-1
line 3 \\
line 4 \\
};
\node [draw, right=5cm of m-2-1] (a) {a};
\draw (m-2-1) -- (a);
\end{tikzpicture}
\end{document}