例如:
\begin{align}
\begin{cases}
& x = X/Z = 1\\
& y = Y/Z = 1\\
\end{cases}
\end{align}
有什么方法可以使 X 和 Y 的间距相同,以便其他变量/数字对齐?
答案1
据我所知,您正在使用cases
环境在表达式的左侧放置一个法语括号。
假设这就是您所使用的全部内容cases
,您可以使用常规分隔符代替cases
,这为您提供了更大的对齐环境灵活性。
就像Stefan Kottwitz 对这个问题的第二个回答,您只需使用\left{
和分隔符即可获得与上述示例\right.
相同的结果。cases
此外,从该答案中,您可以使用alignedat
环境来控制表达式的对齐。
此代码将有关两个符号的表达式对齐=
:
\usepackage{amsmath}
\begin{document}
\[
\left\{% open left french brace delimiter
\begin{alignedat}{2}
x &= X/Z &= 1 \\
y &= Y/Z &= 1 \\
\end{alignedat}
\right.% close the delimiter
\]
\end{document}
然而,这段代码确实不是具有与 相同的方程编号align
。
如果你的项目需要方程式编号,你可以\hphantom{}
使用Peter Grill 对此问题的回答在环境中保留方程编号,尽管这比使用上面讨论的分隔符align
要复杂得多。alignedat
答案2
array
您可以在环境中插入环境cases
,以创建极其灵活的格式选项。(在下面的代码中,@{{}={}}
粒子生成适当间距的=
符号。)
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align}
\begin{cases}
\begin{array}{l @{{}={}} l @{{}={}} l}
x & X/Y/Z & 1\\
abc & M/L & uvw
\end{array}
\end{cases}
\end{align}
\end{document}
评论:对于手头的示例,环境align
和cases
环境都不是必需的。更简单(且格式更紧凑)的解决方案是:
\begin{equation}
\left\{
\begin{array}{l @{{}={}} l @{{}={}} l}
x & X/Y/Z & 1\\
abc & M/L & uvw
\end{array}
\right.
\end{equation}
答案3
你需要混合empheq
以及一些框操作。这里有三种不同的选项,具体取决于您想要哪种方程编号(还有更多选项):
\documentclass{article}
\usepackage{empheq} % Loads mathtools and amsmath
\begin{document}
\begin{empheq}[left=\empheqlbrace]{align}
x &= X/Y/Z = 1 \\
y &= \mathrlap{Y/Z}\phantom{X/Y/Z} = 1
\end{empheq}
\begin{equation}
\begin{cases}
&\hspace*{-1em} x = X/Y/Z = 1 \\
&\hspace*{-1em} \mathrlap{y}\phantom{x} = \mathrlap{Y/Z}\phantom{X/Y/Z} = 1
\end{cases}
\end{equation}
\[
\begin{cases}
&\hspace*{-1em} x = X/Y/Z = 1 \\
&\hspace*{-1em} \mathrlap{y}\phantom{x} = \mathrlap{Y/Z}\phantom{X/Y/Z} = 1
\end{cases}
\]
\end{document}
\mathrlap
由提供mathtools
由 自动加载empheq
。
可以注意到左括号尺寸的一些细微差异,但对于不显眼的读者来说,这基本上可以忽略不计。