考虑以下 MWE
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{gather*}
\renewcommand{\arraystretch}{1.2}
\begin{pmatrix} \frac{1}{2} \\ \frac{1}{2} \end{pmatrix} \\
\begin{pmatrix} \frac{1}{2} \\ \frac{1}{2} \end{pmatrix}
\end{gather*}
\begin{gather*}
\renewcommand{\arraystretch}{1.2}
\begin{pmatrix} \frac{1}{2} \\ \frac{1}{2} \end{pmatrix} \\
\renewcommand{\arraystretch}{1.2}
\begin{pmatrix} \frac{1}{2} \\ \frac{1}{2} \end{pmatrix}
\end{gather*}
\end{document}
第一个gather
生成两个数组;在第一个数组中,分数间距适当,而在第二个数组中,它们以默认的垂直间距挤在一起。为什么我需要在换行符后重新指定?有没有更好的方法可以做到这一点?(我意识到我可以在开头的 后用 a\renewcommand{\arraystretch}{1.2}
将整个集合括在一对中)。{}
\renewcommand{\arraystretch}{1.2}
{
答案1
环境内换行符之间的每个条目gather
都放置在一个组内。为此, 的范围\renewcommand{\arraystretch}{1.2}
仅持续到 结束\\
,之后您必须再次发出它。
例如,当你使用
\documentclass{article}
\begin{document}
\begin{tabular}{c}
\bfseries ABC DEF \\
GHI KLM
\end{tabular}
\end{document}
这大胆的switch ( \bfseries
) 的跨度不超过\\
,因此必须重新发出才能产生效果。
为了让这一举措产生全球影响穿过换行符,您必须在环境之外发出它。
答案2
瞧:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
{ \renewcommand{\arraystretch}{1.2} % PS
\begin{gather*}
% \renewcommand{\arraystretch}{1.2}
\begin{pmatrix} \frac{1}{2} \\ \frac{1}{2} \end{pmatrix} \\
\begin{pmatrix} \frac{1}{2} \\ \frac{1}{2} \end{pmatrix}
\end{gather*}
} % PS
\begin{gather*}
\renewcommand{\arraystretch}{1.2}
\begin{pmatrix} \frac{1}{2} \\ \frac{1}{2} \end{pmatrix} \\
\renewcommand{\arraystretch}{1.2}
\begin{pmatrix} \frac{1}{2} \\ \frac{1}{2} \end{pmatrix}
\end{gather*}
\end{document}
结果是相同的,因为\arraystretch
针对组内的每个出现都设置了(即在我们的例子中标记为 PS 的行之间)。