我尝试将文本与图形顶部对齐。pstricks
手册上说我可以为pspicture
环境指定一个选项,但这不知何故不起作用。我收到一条错误消息。
! Package xkeyval Error: ``1' undefined in families ``,pstricks,pst-node'.
\documentclass{article}
\usepackage{pstricks,pst-node}
\begin{document}
Test {\begin{pspicture}(2.6,0)(7.4,4.3)
%\psgrid
\rput[B](3,0){\rnode{Peter}{Peter}}
\rput[B](6,0){\rnode{schlaeft}{sleeps}}
%
\rput[B](6,2){\rnode{v}{V[\begin{tabular}[t]{@{}l@{}}
subj ,\\
comps ]
\end{tabular}}}
\rput[B](3,2){\rnode{np1}{1 NP[{nom}]}}
%
\rput[B](4.5,4){\rnode{vp}{V[\begin{tabular}[t]{@{}l@{}}
subj \\
comps ]
\end{tabular}}}
%
\psset{angleA=-90,angleB=90,arm=0pt}
%
\ncdiag{v}{schlaeft}
\ncdiag{np1}{Peter}
\ncdiag{vp}{np1}\ncdiag{vp}{v}
%
\end{pspicture}
\end{document}
答案1
使用shift
选项:
[...]
Test \begin{pspicture}[shift=-4](2.6,0)(7.4,4.3)
\rput[B](3,0){\rnode{Peter}{Peter}}
[...]
-4 是你的第一个文本的 y 坐标
答案2
不确定将pspicture
环境转换为宏结构是否会产生任何不利影响,但\belowbaseline
的命令stackengine
将在的外部发挥作用pspicture
:
\documentclass{article}
\usepackage{pstricks,pst-node}
\usepackage{stackengine}
\begin{document}
Test
\belowbaseline[-\ht\strutbox]
{\pspicture(2.6,0)(7.4,4.3)
%\psgrid
\rput[B](3,0){\rnode{Peter}{Peter}}
\rput[B](6,0){\rnode{schlaeft}{sleeps}}
%
\rput[B](6,2){\rnode{v}{V[\begin{tabular}[t]{@{}l@{}}
subj ,\\
comps ]
\end{tabular}}}
\rput[B](3,2){\rnode{np1}{1 NP[{nom}]}}
%
\rput[B](4.5,4){\rnode{vp}{V[\begin{tabular}[t]{@{}l@{}}
subj \\
comps ]
\end{tabular}}}
%
\psset{angleA=-90,angleB=90,arm=0pt}
%
\ncdiag{v}{schlaeft}
\ncdiag{np1}{Peter}
\ncdiag{vp}{np1}\ncdiag{vp}{v}
%
\endpspicture
}
\end{document}
答案3
您可以为该shift
选项添加星号:
Test \begin{pspicture}[shift=*](2.6,0)(7.4,4.3)
\rput[B](3,0){\rnode{Peter}{Peter}}