![调整矩阵条目之间的间隔](https://linux22.com/image/321923/%E8%B0%83%E6%95%B4%E7%9F%A9%E9%98%B5%E6%9D%A1%E7%9B%AE%E4%B9%8B%E9%97%B4%E7%9A%84%E9%97%B4%E9%9A%94.png)
我有一个非常大的矩阵,其边距溢出。我希望矩阵适合边距,但我希望在不重新缩放的情况下做到这一点,并且不影响其他数组类型条目。是否可以调整一个对象的矩阵列之间的水平间距?
我尝试过执行以下操作:
\documentclass[12pt]{article}
\begin{document}
\begin{equation}
A = \setlength\arraycolsep{2pt}
\pmatrix{ A & B & \dots & C & D & E & \dots & F \cr
A & B & \dots & C & D & E & \dots & F \cr
A & B & \dots & C & D & E & \dots & F \cr
A & B & \dots & C & D & E & \dots & F \cr}
\end{equation}
\end{document}
但改变\setlength\arraycolsep{2pt}
实际上并没有改变间距。
答案1
这里我使用了 TABstack。列间距是可设置的,这里设置为 2pt。行间基线跳跃也可以使用 进行设置\setstackgap{L}{<length>}
。
\documentclass[12pt]{article}
\usepackage{tabstackengine}
\setstackEOL{\cr}
\begin{document}
\begin{equation}
\setstacktabbedgap{2pt}
A = \parenMatrixstack{
A & B & \dots & C & D & E & \dots & F \cr
A & B & \dots & C & D & E & \dots & F \cr
A & B & \dots & C & D & E & \dots & F \cr
A & B & \dots & C & D & E & \dots & F
}
\end{equation}
\end{document}
答案2
您使用的命令\pmatrix
对于 LaTeX 来说是外来的,它是直接从纯 TeX 导入的,因此它不使用 LaTeX 数组的通用框架。
您应该加载amsmath
提供pmatrix
环境,它使用通用框架。
\documentclass[12pt]{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
A =
\begingroup % keep the change local
\setlength\arraycolsep{2pt}
\begin{pmatrix}
A & B & \dots & C & D & E & \dots & F \\
A & B & \dots & C & D & E & \dots & F \\
A & B & \dots & C & D & E & \dots & F \\
A & B & \dots & C & D & E & \dots & F
\end{pmatrix}
\endgroup
\end{equation}
\end{document}
如果“简化”矩阵是环境中唯一的矩阵,则\begingroup
–对实际上不是必需的,因为设置在环境结束时无论如何都会消失,但这也没有坏处。\endgroup
equation
\arraycolsep
答案3
首先,我建议使用较新的环境 pmatrix,而不是\pmatrix{}
。etoolbox 包可以为您提供解决方案:
\documentclass[12pt]{article}
\usepackage{amsmath,etoolbox}
\AtBeginEnvironment{pmatrix}{\setlength{\arraycolsep}{20pt}}
\begin{document}
\begin{equation}
\begin{pmatrix} A & B & \dots & C & D & E & \dots & F \cr
A & B & \dots & C & D & E & \dots & F \cr
A & B & \dots & C & D & E & \dots & F \cr
A & B & \dots & C & D & E & \dots & F \cr
\end{pmatrix}
\end{equation}
\end{document}