等式并排,两个数字都在右边

等式并排,两个数字都在右边

我怎样才能并排排版两个方程式,但将两个方程式的编号都打印在右边?

          a = b            c = d      (1, 2)

我需要在文中分别引用这两个方程式。

我知道超级电力高温热电偶,但他们并不希望这两个数字都出现在页面的右侧。

答案1

保存 的含义\label(如果这样做,则在加载 之后hyperref)并equation*与 一起使用\tag

\documentclass{article}

\usepackage{amsmath}
\usepackage[colorlinks]{hyperref} % optional

\AtBeginDocument{\let\latexlabel\label}

\begin{document}
\begin{equation*}
\refstepcounter{equation}\latexlabel{firsthalf}
\refstepcounter{equation}\latexlabel{secondhalf}
a=b\qquad c=d
\tag{\ref*{firsthalf}, \ref*{secondhalf}}
\end{equation*}

Another
\begin{equation}
e=f
\end{equation}

\ref{firsthalf} and \ref{secondhalf}
\end{document}

如果您不使用hyperref,则只需使用\ref而不是\ref*(这是为了避免创建虚假链接)。

在此处输入图片描述

答案2

以下手动解决方案基于amsmath确保方程编号可参考的包:

\documentclass{article}
\usepackage{amsmath}

\makeatletter
\newcommand*{\stepeqlabel}[1]{%
  \@bsphack
  \begingroup
    \refstepcounter{equation}%
    \label{#1}%
  \endgroup
  \@esphack
}
\newcommand*{\theequationadd}[1]{%
  \the\numexpr\value{equation}+(#1)\relax
}
\makeatother

\begin{document}
  Two equations \eqref{eq:first} and \eqref{eq:second} in one line:
  \stepeqlabel{eq:first}
  \begin{align}
    a&=b & c&=d
    \tag{\theequation, \theequationadd{1}}
  \end{align}
  \stepeqlabel{eq:second}
\end{document}

结果

评论:

  • \tag用于覆盖正规方程编号。
  • 如果\tag使用,则方程编号不会更新。因此,方程计数器会增加方程组。
  • align( amsmath) 认为,方程系统中只有一个方程编号。因此方程计数器在系统后增加以匹配第二个方程编号。标签也放在这里。
  • 如果\label不需要,则\stepeqlabel{...}用替换\stepcounter{equation}
  • \@bsphack\@esphack来自 LaTeX 内核,以避免\label和类似命令的重复空格\index
  • 如果方程式编号的格式与普通阿拉伯数字不同,则\theequationadd可以采用。

相关内容