
以下の文書
\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
remember picture
これは、 viaを使用した TikZ/pgf のバグです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}