我正在使用以下程式碼:
\documentclass[12pt,letterpaper]{article}
\usepackage[all]{xy}
\begin{document}
\[
\xymatrix
{
& A \ar[dd]_{\pi_A} \\
& & **[r] G(A) = G(B)=Z\oplus Z\oplus Z\oplus Z \\
**[l] 4\beta+ f(\beta) + g(\beta) = & B \ar[dd]_{\pi_B} \\
& & **[r] F(B) = F(C) \\
**[l] \gamma= & C
}
\]
\end{document}
此程式碼建立下圖:
它看起來相當不錯,除了我希望最左邊的列更接近,幾乎接觸中心列,並且最右邊的列也更接近,但可能距中心列一英寸左右。
如果我將線路更改\xymatrix
為\xymatrix@C=-45pt
,我會得到一些非常好的結果,但這個解決方案對我來說似乎非常特別。我認為問題在於列對齊保持列的中心線相同,並保持列寬度相同,並將條目對齊以沿該中心線向右(或向左)對齊,而不是向右(或向左)對齊)在分配給該列的空間中。
答案1
這樣會更好嗎?
\[
\hphantom{4\beta+ f(\beta) + g(\beta) ={}}
\xymatrix@R+1pc
{
A \ar[d]_{\pi_A}^{\qquad\textstyle G(A) = G(B)=Z\oplus Z\oplus Z\oplus Z} \\
\llap{$4\beta+ f(\beta) + g(\beta) ={}$}B \ar[d]_{\pi_B}^{\qquad\textstyle F(B) = F(C)} \\
\llap{$\gamma={}$}C
}
\]