我在具有多个制表位的环境中编写方程式align
,我想使用它split
为多行方程式渲染一个方程式编号。但是,如果每行有多个制表位,我会收到错误
Extra alignment tab has been changed to \cr.
<template> }$\hfill \endtemplate
这是一个有效的例子:
\documentclass{article}
\usepackage{mathtools}
\begin{document}
\begin{align}
f(x) &= y & g(x) &= z \\
h(x) &= a & h(x) &= b
\end{align}
\begin{align}
\begin{split}
f(x) &= y \\
h(x) &= a
\end{split}
\end{align}
\end{document}
并产生以下输出。
这是一个不起作用的示例。请注意,与上述两个示例的唯一区别在于它split
与多个制表位一起使用。
\documentclass{article}
\usepackage{mathtools}
\begin{document}
\begin{align}
\begin{split}
f(x) &= y & g(x) &= z \\
h(x) &= a & h(x) &= b
\end{split}
\end{align}
\end{document}
答案1
alignat
如果您需要对所有方程式进行单独编号,我建议您使用一个环境;如果您只需要为所有方程式提供一个垂直居中的方程式编号,我建议您使用equation
/嵌套环境。alignedat
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{alignat}{2}
f(x) &= y &\hspace{2.5cm} g(x) &= z \\
h(x) &= a & h(x) &= b
\end{alignat}
\begin{equation}
\begin{alignedat}{2}
f(x) &= y &\hspace{2.5cm} g(x) &= z \\
h(x) &= a & h(x) &= b
\end{alignedat}
\end{equation}
\end{document}