更新

更新

我需要在对齐环境中绘制一条水平线。例如,在下面的 MWE 中,我需要一条线将第三行分隔开。

\documentclass{article}
\usepackage{amsmath}
\begin{document}
    \begin{align*}
    x &= 1\\
    y & = 2 \\
    \hline
    x + y &= 3 
    \end{align*}
\end{document}

编辑我忘了说了,左边的线不应该太长(注意附图)。

答案1

这是一个解决方案

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align*}
x &= 1\\
y & = 2 \\
 \cline{1-2}
x + y &= 3 
\end{align*}
\end{document}

答案2

我对这个问题进行了大量研究,这是我见过的最简单的解决方案。虽然touhami 的回答很棒,但我对垂直间距有异议。

为了\hline在数学环境中使用类似的东西,我发现你需要处于一个“子”数学环境中* split,如aligned,等等。一旦这样,您就可以使用不变的代码:

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation*}
  \begin{split}
    x &= 1 \\
    y &= 2 \\
    \hline
    x + y &= 3 
  \end{split}
\end{equation*}
\end{document}

荒谬的等式

如果要包含方程编号,请将equation*环境替换为equation

无意义的等式编号

我对 周围的垂直间距不太满意\hline。对于某些公式,它可以更大一些,但\hline \\[-.5ex]没有得到尊重。欢迎在评论中留下解决方案,我会将其纳入。

记录的其他选项可能包括尝试争取\frac{top}{bottom}做你想做的事情。


*欢迎对此声明进行强化!我的乳胶知识有限。

有用资源:
amsmath 用户指南

更新 [2.27.22]

我找到了一种干净的方法,可以在\hline

\noalign{\smallskip} \hline \noalign{\smallskip}

可以存储在命令中:

\newcommand{\eqline}{\noalign{\smallskip} \hline \noalign{\smallskip}}

输出:
具有良好间距的无意义方程

更新文本:

\documentclass{article}
\usepackage{amsmath}
\newcommand{\eqline}{\noalign{\smallskip} \hline \noalign{\smallskip}}
\begin{document}
\begin{equation*}
  \begin{split}
    x &= 1 \\
    y &= 2 \\
    \eqline{}
    x + y &= 3 
  \end{split}
\end{equation*}
\end{document}

答案3

不是太复杂,但是你可以rule在这里使用一个简单的。

% arara: pdflatex

\documentclass{article}
\usepackage{mathtools}

\begin{document}
    \begin{align*}
        x &= 1\\
        y & = 2 \\[-\jot] % you may decrease the vertical space here and in the next line as well.
        \mathclap{\rule{2cm}{0.4pt}}\\
        x + y &= 3 
    \end{align*}
\end{document}

在此处输入图片描述

答案4

只是为了完整性。在纯 TeX 中,我们没有遇到任何问题。

$$
  \eqalign{
        x &= 1 \cr
        y &= 2 \cr \noalign{\smallskip\hrule\smallskip}
    x + y &= 3 
  }
$$    
\bye

给出期望的结果。

相关内容