在下图中,您可以看到幻影在案例环境中占据的宽度没有达到预期:
这是MWE:
\documentclass{amsart}
\begin{document}
\begin{align*}
M+A+T & =12\\
\phantom{M+}A+T & =10
\end{align*}
\[
\begin{cases}
M+A+T & =12\\
\phantom{M+}A+T & =10
\end{cases}
\]
\end{document}
我的问题是:为什么 cases 环境中的幻影不像在 align* 环境中那样占用那么多空间?我该如何修复它?
我现在只有一个临时的解决方案,那就是手动添加一些\hspace。
答案1
align
从技术上讲确实如此;正是和之间的对齐差异让cases
您感到困惑。align
周围的元素采用从右到左的对齐方式&
,而 则采用从左到左的对齐方式。因此, 中的间距比cases
中的间距更明显。cases
align
为了获得适当的间距,使用\phantom{M + {}}
- 在后面添加一个空组,+
以确保 TeX 将其视为二进制操作员。
\documentclass{amsart}
\begin{document}
\begin{align*}
M + A + T & = 12 \\
\phantom{M + {}} A + T & = 10
\end{align*}
\[
\begin{cases}
M + A + T & = 12 \\
\phantom{M + {}} A + T & = 10
\end{cases}
\]
\end{document}
您最好使用以下命令cases
:
\[
\begin{cases}
M + A + T = 12 \\
\phantom{M + {}} A + T = 10
\end{cases}
\]
答案2
确实如此,但是由于您已将两行用 & 对齐,因此左边的空间并不重要。
如果希望“Case”示例对齐,则必须添加 {},因为 + 是二元运算符,而 Latex 会在运算符及其参数之间添加空格。因此,如果没有参数(如您的情况),则不会添加空格。
\documentclass{amsart}
\[
\begin{cases}
M+A+T & =12\\
\phantom{M+{}}A+T & =10
\end{cases}
\]
\end{document}
希望我能帮上忙:)
答案3
区别在于align
会形成一对列,一列右对齐,一列左对齐,因此在或 的\phantom
情况下 不执行任何操作。align
align*
为了获得正确的间距,您需要一个空组:\phantom{M+{}}
,因为只有这样 TeX 才会将其视为+
二元运算符号。
但是还有一个更简单的解决方案:
\begin{cases}
\begin{aligned}[t]
M+A+T &= 12
A+T &= 10
\end{aligned}
\end{cases}
全面比较:
\documentclass{amsart}
\begin{document}
\[
\begin{cases}
M+A+T = 12\\
\phantom{M+{}}A+T = 10
\end{cases}
\]
\[
\begin{cases}
\begin{aligned}[t]
M+A+T &= 12\\
A+T &= 10
\end{aligned}
\end{cases}
\]
\end{document}