我使用以下代码使 xy-pic 箭头标签支持多行:
\let\oldlabelbox=\labelbox
\def\newlabelbox#1{%
\oldlabelbox{\vcenter{\normalbaselines%
\let\\=\cr\ialign{$\labelstyle##\hfil$\crcr#1\crcr}}%
}}
\let\labelbox\newlabelbox
问题是标签最终偏离了其应在位置的右侧约 0.5ex。我想我可以明确地在其中放置一个负空间,但这似乎有点不雅。
我想知道上述定义中的什么产生了该偏移。
答案1
下次如果你能发布一个可编译的最小示例。
间距没有问题:
\documentclass{article}
\usepackage[all]{xy}
\let\oldlabelbox=\labelbox
\def\newlabelbox#1{%
\oldlabelbox{\vcenter{\normalbaselines%
\let\\=\cr\ialign{$\labelstyle##\hfil$\crcr#1\crcr}}%
}}
\let\labelbox\newlabelbox
\begin{document}
\xy(0,0)
\ar @{-->} (50,20) ^{X\\Y}="a"
\POS(0,10)*+\txt{Label\\Test} \ar "a"
\endxy
\end{document}