使用 hline 对齐美化数学环境中的空白

使用 hline 对齐美化数学环境中的空白

我有点惊讶我找不到已经解决过这个问题的地方,它看起来太基础了:我想排版基本的代数解法,你写一个等式,然后在它下面写出你对两边做了什么,然后你在下面划线,好像它是两个东西相加,在下面显示结果。例如,我一直试图写以下内容,

\documentclass{article}
\usepackage{amsmath}
\begin{document}
    \begin{alignat*}
    x & -1 = & 3\\
     & +1  & +1\\ \cline{1-3}
    &x &= 4
    \end{alignat*}
\end{document}

除了“+1 +1”行和水平线之间的空白看起来很丑之外,大部分看起来都很漂亮。由于所有的对齐控制,我无法使用下划线。我考虑过使用 \toprule,但这在数学环境中似乎不起作用。还有其他想法吗?

答案1

虽然我很确定这在另一个问题中提到过,这里有一个建议。

(但是,您的使用alignat缺少了一个重要的东西——列数。)

您需要做的就是在倒数第二行之后,就在 之前\cline指定一个可选的负垂直空间。这里我使用了小写“x”的两倍高度:

\documentclass{article}
\usepackage{amsmath}
\begin{document}
    \begin{alignat*}{2}
    x & -1 = & 3\\
     & +1  & +1\\[-2ex] \cline{1-3}
    x & \phantom{{}-1} = & 4
    \end{alignat*}
\end{document}

示例代码的输出

答案2

您可能希望使用array,而不是alignat,以便实现更精细的控制。

我建议两个版本,左边的一个{+1}避免了两个符号之间的空格。

\documentclass{article}
\usepackage{amsmath,array,booktabs}
\begin{document}
\[
\begin{array}{
  @{}
  r % for x
  @{}
  >{{}}r % for -1 and +1
  @{}
  >{{}}c<{{}} % for the =
  @{}
  r % for the right hand side
  @{}
}
x &  -1  & = &  3\\
  & {+1} &   & +1\\
\midrule
x &    & = &  4
\end{array}
\qquad
\begin{array}{
  @{}
  r % for x
  @{}
  >{{}}r % for -1 and +1
  @{}
  >{{}}c<{{}} % for the =
  @{}
  r % for the right hand side
  @{}
}
x & -1 & = &  3\\
  & +1 &   & +1\\
\midrule
x &    & = &  4
\end{array}
\]
\end{document}

在此处输入图片描述

相关内容