对齐:控制方程式的拉伸位置

对齐:控制方程式的拉伸位置

我想以一种非常特殊的方式格式化方程式,期望的结果是:

        f(x)= 42(1)
        g_something(x)= 0(2)
  1. 函数名称左对齐(但整个方程仍然浮动,并且没有大范围的拉伸
  2. 这些方程式都是编号的(理由array没有简单的方法可以添加数字*
  3. 数字右对齐,以对齐小数位(奖金自从现在没什么大不了)

下面是一个带有基本方程的 MWE,我试图通过添加额外的&

梅威瑟:

\documentclass{article}
\usepackage{amsmath}
\begin{document}
    \begin{align}
        f(x) &= 42 \\
        g_{\text{something}}(x) &= 1
    \end{align}

    %incorrect alignment of parts
    \begin{align}
        &f(x) &= 42& \\
        &g_{\text{something}}(x) &= 1&
    \end{align}

    %too much spacing
    \begin{align}
        &f(x) &=&& 42& \\
        &g_{\text{something}}(x) &=&& 1&
    \end{align}
\end{document}

我不相信,fleqnnccmath无法解决我的问题。我遇到nccmath这个答案=这个答案中的迹象并不一致。

*(如果我理解正确的话)

答案1

它  alignat控制对齐列之间的间距。这里需要 3 列,因此有 5 个 & 符号:

\documentclass{article}
\usepackage{amsmath}

\begin{document}

    \begin{alignat}{3}
        &f(x) & & ={}& 42& \\
        &g_{\text{something}}(x) & & =& 1&
    \end{alignat}

\end{document} 

在此处输入图片描述

答案2

像这样?

在此处输入图片描述

上面的方程组是我们利用alignat数学环境得到的:

\documentclass{article}
\usepackage{amsmath}
\begin{document}
    \begin{alignat}{3}
        &f(x)                    & = & 42 \\
        &g_{\text{something}}(x) & = & 1
    \end{alignat}
\end{document}

相关内容