我正在尝试想出绝对最佳的方法来复制我的教科书中的矩阵对齐样式(线性代数及其应用作者:Steven J. Leon。
我第一次在这里找到这个最有帮助的答案。
唯一的问题是,看看人们的回答,虽然他们能够在某些条目带有负号时对齐正整数,但会出现额外的空间。看看那里评分最高的答案。请注意,虽然所有内容都对齐得很好,但第一列和第二列之间的间距大于任何其他两个连续列之间的间距。
Leon 的书没有这个问题。有没有办法让正整数对齐,而不管负号如何,并且不会偏移列间距?
答案1
对于这个问题,mathtools
定义了有用的命令:\mathrlap
、\mathllap
和\mathclap
,它们使它们的参数具有 0 宽度,同时左对齐、右对齐或居中对齐。结合 和\phantom
,并在您参考的示例中使用,这将通过简单的代码产生更好的结果:
\documentclass{article}
\usepackage{mathtools} % loads amsmath
\begin{document}
\begin{equation*}\addtolength{\arraycolsep}{2pt}
\begin{pmatrix*}[l]
1 & 0 & 0 & 0 \\
0\phantom{i} & 2 & 2i & 0 \\
0 & \mathllap{-}2 i & 2 & 0 \\
0 & 0 & 0 & 1
\end{pmatrix*}
\end{equation*}
\end{document}