我最近发现了由 创建的节点给出的坐标的相对点平移的一个奇怪行为\rnode
。
文档表明坐标形式([parameter]node)
确定相对于给定节点的几何中心的坐标。
我写了一张图片,但输出结果与此不一致。至少乍一看是这样 :)
代码如下:
\begin{pspicture}(1,1)
\rput(0.5,0.5){
\rnode[t]{n-t}{%
\rnode[b]{n-b}{%
\rnode{n-c}{\Huge{X}}%
}%
}%
}%
\psdot[dotsize=4pt, linecolor=red](n-t)
\psdot[dotsize=3pt, linecolor=red](n-c)
\psdot[dotsize=2pt, linecolor=red](n-b)
\psdot[dotsize=4pt, linecolor=blue]([offset=0,nodesep=0]n-t)
\psdot[dotsize=3pt, linecolor=blue]([offset=0,nodesep=0]n-c)
\psdot[dotsize=2pt, linecolor=blue]([offset=0,nodesep=0]n-b)
\end{pspicture}
结果是
如果我读过代码,我就会清楚蓝点覆盖了红点。但在编译后的图片中却并非如此。
我的推理有错误吗?
答案1
这是 放置的节点的内部行为\rnode
。比较以下两个节点:
\documentclass{article}
\usepackage{pst-node}
\begin{document}
\psscalebox{3}{%
\begin{pspicture}[showgrid](4,2)
\psnode(3,1){A}{\Huge A}\psdot([offset=0pt]A) % uses internally \rnode
\pnode(1,1){B}\rput(B){\Huge B}\psdot([offset=0]B)
\end{pspicture}}
\end{document}
不过,我会查看代码,看看是否可以改变行为。