如何正确获取重新定义的标签框中的间距?

如何正确获取重新定义的标签框中的间距?

我使用以下代码使 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}

替代文本

相关内容