当我使用括号时,对齐环境会出现问题。这是我的示例。
\begin{align}
A& = B~~~&+c~~-D\\
E& = F&+G-H
\end{align}
但是,我在公式中使用括号时也遇到了类似的问题,如下所示给我一个错误
\begin{align}
A& = \left(B~~~&+c~~-D\right)\\
E& = \left(F&+G-H \right)
\end{align}
有人能提供第二个命令的帮助吗?我需要对齐 + 或 - 符号。总之,我怎样才能使第二个代码正常工作(当等式中有括号时)。在这里我没有找到\left.
或的用法\right.
,因为括号在同一行。
感谢您的努力。
谢谢。
答案1
如果您想要多个对齐点,请尝试使用alignat
如下环境:
\begin{alignat}{4}
A& = \bigl(B & + & c-D\bigr)\\
E& = \bigl(F & + & G-H \bigr)
\end{alignat}
这是否达到了您所期望的结果?
正如大卫·卡莱尔 (David Carlisle) 指出的那样,这样使用可能会更好,\bigl(\bigr)
因为不存在尺寸问题。
答案2
命令\left...\right
必须出现在对齐的同一侧,即在一个“单元格”中。在这种情况下,您必须使用特定的尺寸调整命令\bigl...\bigr
或其变体\Bigl
、\biggl
等\Biggl
。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{alignat}{2}
A& = \bigl(B&&+c-D\bigr)\\
E& = \bigl(F&&+G-H \bigr)
\end{alignat}
\end{document}
请注意,我使用的是alignat
环境,而不是align
。中的多列align
用于对齐单独的方程式,例如
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align}
x &=y & p&=q, \\
X &= Y & P&=Q.
\end{align}
\end{document}
另一方面,alignat
在同一个方程中提供多个对齐点。在这两种情况下,通常都有奇数个&
',并且组按“右和左”成对对齐,因此列为p''s is right aligned. For
alignat you have to say how many such "pairs" there are: this is equal to "(number of &'s + 1)/2". Thus the argument to
alignat in my top example with three ampersands is
2'。
最后,您还应该注意此类对齐点处关系符号周围的间距。考虑:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{alignat}{4}
x &=y &&+ (y-1)^3&+&(y+1)^7 &{}-{}&1, \\
X &= Y &&+ Y^3&+&Y^7 &{}-{}&1.
\end{alignat}
\end{document}
查看关系符号的列,请注意前两列带有 和 的间距&=
是&&+
正确的,而第三列带有 的间距&+&
太紧。在第四列中,我放置了额外的空组{}-{}
来纠正这个问题。