![我怎样才能增加这个 xy 图片和文本之间的间距?](https://linux22.com/image/355249/%E6%88%91%E6%80%8E%E6%A0%B7%E6%89%8D%E8%83%BD%E5%A2%9E%E5%8A%A0%E8%BF%99%E4%B8%AA%20xy%20%E5%9B%BE%E7%89%87%E5%92%8C%E6%96%87%E6%9C%AC%E4%B9%8B%E9%97%B4%E7%9A%84%E9%97%B4%E8%B7%9D%EF%BC%9F.png)
通常,当我有一个顶部带有自循环的 Xy 图片时,箭头会与其上方的文本发生碰撞:
\documentclass{article}
\usepackage[all]{xy}
\begin{document}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit
\[\xymatrix{
A\ar@(ul, ur)
}\]
\end{document}
我怎样才能解决这个问题?
以下是我已经尝试过的一些方法:
- 如果前一行是段落的结尾,则不会发生此问题。但在发生此问题的上下文中,图表应该位于段落的中间。
- 在此示例中使用
\vspace
有效,但有时会在图表后添加空格。如果可能的话,我对一种无需手动设置每个图表间距的解决方案感兴趣。 - 如果我尝试将图表包裹在内
\mbox
,它会增加一些空间 - 但还不够。 - 空间大小很大程度上取决于潜在变量:例如,如果您使用
A\ar@(ul, ur)^\phi
而不是A\ar@(ul, ur)
,则图表具有正确的间距。我很想知道为什么会发生这种情况。
由于这种情况在现有代码中多次出现,因此我更愿意寻求Xy
解决方案,而不是将所有内容移植到tikz-cd
。
答案1
弯曲的箭头用 绘制\special
,就确定边界框而言,它们不受 TeX 的控制,因为它们是在没有宽度和高度的框中排版的。
添加虚拟标签可以解决问题:
\documentclass{article}
\usepackage[all,cmtip]{xy} % otherwise arrow tips are ugly
\begin{document}
\noindent % just to make alike lines
Lorem ipsum dolor sit amet, consectetuer adipiscing elit
\[\xymatrix{
A\ar@(ul, ur)
}\]
Lorem ipsum dolor sit amet, consectetuer adipiscing elit
\[\xymatrix{
A\ar@(ul, ur)^{}
}\]
Lorem ipsum dolor sit amet, consectetuer adipiscing elit
\[\xymatrix{
A\ar@(ul, ur)_{}
}\]
\end{document}