在 aligned 和 aligned[t] 环境中对齐

在 aligned 和 aligned[t] 环境中对齐

以下代码指示 LaTeX 为某个和的绝对值的平方排版两种不同的表达式。我有三种对齐方式 - 其中一个“几乎”正确,另外两个是正确的。

“=” 对齐正确。但是,两个等号右侧的空格不同。(这应该会改变其他对齐方式,但事实并非如此。)我认为第二个等号右侧的空格太小了。我该如何纠正?

我希望第 2、4 和 6 行中的第一个“+”对齐。似乎如果 LaTeX 没有在第 2 行的“3”后面放置过多的空格,这些加号就会对齐。在 aligned[t] 环境中,我有两个对齐。似乎由于我有“3 &&+”来开始编写第 2 行的代码,所以第二个“&”人为地插入了额外的空格。

第三个对齐是将第 2 行的 cos(2a + b + c) 对齐,将第 3 行的第一个“+”对齐,将第 4 行的 cos(a - b) 对齐,将第 5 行的第一个“+”对齐。这是正确的。(我想这样说以帮助那些查看代码的人。)

\begin{align*}
\MoveEqLeft[3] \vert xy + xz + yz \vert^{2} \\
&= \begin{aligned}[t] 3 &&+ \bigl[&\cos(2a + b + c) + \cos(a + 2b + c) + \cos(a + b + 2c) \\
&&& + \cos(a - b) + \cos(a - c) + \cos(b - c)\bigr] \\
&&+ \bigl[&\cos(a - b) + \cos(a - c) + \cos(b - c) \\
&&&- \bigl(\cos(2a + b + c) + \cos(a + 2b + c) + \cos(a + b + 2c)\bigr) \bigr] \\
\end{aligned} \\
&= 3 + 2\bigl(\cos(a - b) + \cos(a - c) + \cos(b - c)\bigr) .
\end{align*}

答案1

alignat*以下是使用和的组合建议\mathrlap

\documentclass{scrartcl}
\usepackage{mathtools}% loads also amsmath
\begin{document}
\begin{alignat*}{3}
  \MoveEqLeft[3] \mathrlap{\vert xy + xz + yz \vert^{2}} \\
  &= 3&& + \bigl[&&\cos(2a + b + c) + \cos(a + 2b + c) + \cos(a + b + 2c) \\
  &&&&&+ \cos(a - b) + \cos(a - c) + \cos(b - c)\bigr] \\
  &&&+ \bigl[&&\cos(a - b) + \cos(a - c) + \cos(b - c) \\
  &&&&&- \bigl(\cos(2a + b + c) + \cos(a + 2b + c) + \cos(a + b + 2c)\bigr) \bigr] \\
  &= 3&&\mathrlap{{}+ 2\bigl(\cos(a - b) + \cos(a - c) + \cos(b - c)\bigr).} 
\end{alignat*}
\end{document}

在此处输入图片描述

或者可能更好

\documentclass{scrartcl}
\usepackage{mathtools}% loads also amsmath
\begin{document}
\begin{alignat*}{3}
  \vert xy + xz + yz \vert^{2}
      &= 3&& + \bigl[&&\cos(2a + b + c) + \cos(a + 2b + c) + \cos(a + b + 2c) \\
  &&&&&+ \cos(a - b) + \cos(a - c) + \cos(b - c)\bigr] \\
  &&&+ \bigl[&&\cos(a - b) + \cos(a - c) + \cos(b - c) \\
  &&&&&- \bigl(\cos(2a + b + c) + \cos(a + 2b + c) + \cos(a + b + 2c)\bigr) \bigr] \\
  &= 3&&\mathrlap{{}+ 2\bigl(\cos(a - b) + \cos(a - c) + \cos(b - c)\bigr).} 
\end{alignat*}
\end{document}

在此处输入图片描述

\mathrlap由包提供mathtools。它“隐藏”了其参数的宽度,因此最后一条方程行不会影响第 4 条和第 5 条&

在 a 周围插入的空格+取决于其当前含义。{}+最后一行的 向 latex 表明 表示+加法,而不仅仅是正数。

答案2

我认为这样看起来会更好multlined:公式更易于阅读,语法更简单,并且3+ 号对齐!:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[showframe, nomarginpar]{geometry}
\usepackage{amssymb,mathtools}
\usepackage{amsfonts}

\begin{document}

    \begin{align*}
     \vert xy + xz + yz \vert^{2} = 3 & +\!\! \begin{multlined}[t]
                     \bigl[\cos(2a + b + c) + \cos(a + 2b + c) + \cos(a + b + 2c) \\
                    + \cos(a - b) + \cos(a - c) + \cos(b - c)\bigr]
                \end{multlined} \\
    & + \!\!\begin{multlined}[t]
     \bigl[\cos(a - b) + \cos(a - c) + \cos(b - c) \\
    - \bigl(\cos(2a + b + c) + \cos(a + 2b + c) + \cos(a + b + 2c)\bigr) \bigr]
                \end{multlined} \\
    = 3 &+ 2\bigl(\cos(a - b) + \cos(a - c) + \cos(b - c)\bigr) .
    \end{align*}

\end{document} 

在此处输入图片描述

关于标志右侧的不同间距=,第一个有点太大。如果你有一个负薄间距(\!),那就没问题。

相关内容