使用对齐环境和 \phantom 解决对齐问题

使用对齐环境和 \phantom 解决对齐问题

下面的代码

\documentclass[]{article}
\usepackage{amsmath}

\begin{document}
\begin{align*}
  A &\leq B \cdot C \cdot \int D
  \\&
    \phantom{{} \leq B \cdot {}}
    C \cdot \int D
  \\&
    \phantom{{} \leq B \cdot C {}}
    \cdot \int D
  \\&
    \phantom{{} \leq B \cdot C \cdot \int {}}
    D
\end{align*}

\begin{align*}
  A &\leq \fbox{aaaaaaaaaaaaaaaaaaaaaaaaa}
  \\&
    \phantom{{} \leq {}}
    \cdot \int \fbox{bbbbbbbbbbbbbbbb}
  \\&
    \phantom{{} \leq \cdot \int {}}
    \fbox{ccccccccccccccccccc}
\end{align*}
\end{document}

给出 奇怪的排列

在第一种情况下,对齐工作完全符合我的预期。但为什么在第二种情况下,b 和 c 的框没有对齐?

答案1

在第二个中,align您忘记了后面的空原子\leq

\begin{align*}
  A &\leq \fbox{aaaaaaaaaaaaaaaaaaaaaaaaa}
  \\&
    \phantom{{} \leq {}}
    \cdot \int \fbox{bbbbbbbbbbbbbbbb}
  \\&
    \phantom{{} \leq {}\cdot \int {}}
    \fbox{ccccccccccccccccccc}
\end{align*}

在此处输入图片描述

当你有相对 垃圾桶 操作, 这垃圾桶原子变成奥德(想想$a \leq -\log b$),所以间距发生了变化。

答案2

为什么不直接将其对齐到您想要的位置,然后相应地调整第一行?

\documentclass[]{article}
\usepackage{amsmath}

\begin{document}
\begin{align*}
  A \leq B \cdot C \cdot \int &D
  \\
  C \cdot \int &D
  \\
  \cdot \int &D
  \\
  &D
\end{align*}

\begin{align*}
   A \leq \hspace{2.2em} &\hspace{-2em}\fbox{aaaaaaaaaaaaaaaaaaaaaaaaa}
  \\
    \cdot \int &\fbox{bbbbbbbbbbbbbbbb}
  \\
    &\fbox{ccccccccccccccccccc}
\end{align*}
\end{document}

请注意,我2.2em在 之前添加了&而不是,因为它在和框2em之间留出了空格,这样看起来更好一些,至少对我来说是这样。\leq

相关内容