我align
在文档中总是使用 ,并避免使用equation
。这样做有什么问题吗?我这样做的理由是:对齐 > 方程式,那么为什么不使用它呢?
答案1
答案2
equation
“挤压”数学运算(即在符号之间使用更少的空白)以避免出现坏箱,但align
事实并非如此。
\documentclass[11pt,draft]{article}
\usepackage{amsmath}
\begin{document}
Using ``equation'':
\begin{equation*}
1+2+3+4+5+6+7+8+9+10
= 11+12+13+14+15+16+17+18+19+20+21
\end{equation*}
Using ``align'':
\begin{align*}
1+2+3+4+5+6+7+8+9+10
= 11+12+13+14+15+16+17+18+19+20+21\\
\end{align*}
\end{document}
答案3
我对 Will Robertson 表示应有的敬意,实际上我认为从原则上来说这不是一个好主意,因为它们的含义不同,并且标记(无论是 *TeX、HTML 还是……)都应该尽可能合乎逻辑。
如果您正在排版方程式,则使用equation
,如果您希望对齐,则可以使用aligned
方程式内的块。
通过思考如何引用方程式,您可以轻松决定是否要排版方程式。如果您只希望显示一个方程式编号,并发现自己手动隐藏了任何其他方程式编号(例如使用\notag
),那么您就是在排版方程式,您的标记应该反映这一点。
答案4
如果你同时使用amsmath
和amsthm
,你用一行方程结束证明,并想将 qed 框移动到包含方程的行上,align
则会很乐意将框套印在数学末尾。 equation
表现如此。也是如此\[ ... \]
。
\documentclass{article}
\usepackage{amsmath}
\usepackage{amsthm}
\begin{document}
\begin{proof}
one-line display with \verb+align*+
\begin{align*}
a + b = c \qedhere
\end{align*}
\end{proof}
\begin{proof}
one-line display with \verb+equation*+
\begin{equation*}
a + b = c \qedhere
\end{equation*}
\end{proof}
\begin{proof}
one-line display with \verb+\[+ \dots\verb+\]+
\[
a + b = c \qedhere
\]
\end{proof}
\end{document}
编辑: 这应该在答案的原始表述中说明,但却被忽略了。
这种用法的真正问题align
是align
期望和需要奇数个&
s 才能正常工作。
简而言之, 的目的align
是设置相邻的方程,使得每个方程中的指定点(标记为&
)位于多行显示的所有行中的相同水平位置。由于每行可能出现多个分量方程,这些分量依次由 分隔&
,因此要求它们的数量为奇数。此外,align
不应用于单行显示;这就是equation
(或\[ ... \]
无编号的种类)的用途。amsmath
有关详细信息,请参阅用户指南(texdoc amsldoc
)。