将 \vdots 置于多个方程组的中心,并将方程与左括号对齐

将 \vdots 置于多个方程组的中心,并将方程与左括号对齐

我有类似的问题问题。

我想k用水平\dots\vdots对齐方式排版方程式。问题是我希望方程式与左括号对齐。

例如下面的代码:

\documentclass{article}
\usepackage{amsmath}

\begin{document}
\begin{equation}
\left\lbrace %
\begin{split}
    a + b + &\dots + c = d                                    \\
    a + b + &\dots + c = d                                    \\
            &\setbox0\hbox{=}\mathrel{\makebox[\wd0]{\vdots}} \\
    aaaaaaa + b + &\dots + c = d
\end{split} %
\right.
\end{equation}
\end{document}

生成:

在此处输入图片描述

如你所见,前两个方程式从括号开始。所以我尝试了这个:

\documentclass{article}
\usepackage{amsmath}

\begin{document}
\begin{equation}
\left\lbrace %
\begin{split}
    &a + b + &\dots + c = d                                    \\
    &a + b + &\dots + c = d                                    \\
    &        &\setbox0\hbox{=}\mathrel{\makebox[\wd0]{\vdots}} \\
    &aaaaaaa + b + &\dots + c = d
\end{split} %
\right.
\end{equation}
\end{document}

这样就可以得到我想要的结果,但是垂直点并不位于水平点的中心:

在此处输入图片描述

我怎样才能获得如第二幅图所示的对齐效果,但垂直点的对齐方式与第一个示例中的一样?

答案1

在这种情况下split不是最好的选择;而是使用array

\documentclass{article}
\usepackage{amsmath,array}

\begin{document}
\begin{equation}
\left\lbrace
\begin{array}{@{} l<{{}} @{} l @{}}
a + b +       &\dots + c = d                       \\
a + b +       &\dots + c = d                       \\
              &\sbox0{\dots}\makebox[\wd0]{\vdots} \\
aaaaaaa + b + &\dots + c = d
\end{array}
\right.
\end{equation}
\end{document}

通过添加<{{}}一个空对象,以便操作符号周围的间距正确。

在此处输入图片描述

您还可以通过添加另一个对齐点来简化输入:

\documentclass{article}
\usepackage{amsmath,array}

\begin{document}
\begin{equation}
\left\lbrace  
\begin{array}{@{} l<{{}} @{} c @{} >{{}}l @{}}
a + b +       &\dotsb & + c = d  \\
a + b +       &\dotsb & + c = d  \\
              &\vdots           \\
aaaaaaa + b + &\dotsb & + c = d
\end{array}
\right.
\end{equation}
\end{document}

(请注意,在这种情况下使用\dotsb以获得正确的点。)

相关内容