alignat 添加额外的间距

alignat 添加额外的间距

我想要实现以下目标,除了之前没有奇怪的额外缩进c

在此处输入图片描述

=另外,为什么和之间b以及+和之间缺少间距d?除了添加 之外,有没有更好的方法可以解决这个问题\:

这是我的代码:

\begin{alignat*} {2}
a = & b + (&& c \\
&& + d) \\
& + g
\end{alignat*}

编辑:澄清一下,这就是我所寻找的。我使用 daleif 的解决方案找到了它。

在此处输入图片描述

编辑2:事实证明,daleif 的解决方案不适用于较长的第三行:

在此处输入图片描述

答案1

我会用

\begin{alignat*} {2}
a = {}& b + (&& c \\ % <- added {}
&&& + d) \\ % <- added extra &
& + g
\end{alignat*}

更新:(请始终制作相关的 MWE,而不是浪费人们的时间)。在这种情况下(特别是因为它没有编号),我会使用

\begin{align*} 
a = {}& b +
\!
\begin{aligned}[t]
  (& c \\
  & + d)
\end{aligned}
\\
& + ggggggggggggggggggggggggg
\end{align*}

答案2

这就是你需要的吗?

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align*}
a =  b &+ (c \\
& \phantom{+(c}+ d) \\
& + g
\end{align*}
\end{document}

或者使用这个来获得相同的输出:

\begin{alignat*}{2}
 a =  b& + ( c& \\
 && + d) \\
 & + g&
\end{alignat*}  

在此处输入图片描述

答案3

或者是这个?其实还不完全清楚。

\documentclass{amsart}

\begin{document}
\begin{alignat*}{2}
    a &= b&{}+ (c \\
        &&{}+ d) \\
    & + g
\end{alignat*}
\end{document}

输出:

在此处输入图片描述

请注意&应在 之前=,而不是在 之后。

帖子已编辑因为忘记了{}

添加:

&如果我坚持要放置,请不要认为我太挑剔 =:这使得额外的操作变得{}没有必要。输入:

\documentclass{amsart}

\begin{document}
\begin{alignat*}{2}
    a &= b + (&&c \\
         &&&+ d) \\
    & {}+ g
\end{alignat*}
\end{document}

输出:

在此处输入图片描述

相关内容