在以下方程组中,我希望垂直点\vdots
水平对齐在页面中心。我尝试了gathered
嵌套在aligned
环境中的环境,如下所示此解决方案,但对齐结果并不理想(见下图和 MWE)。
请注意,我并不想以例如为\vdots
中心。=
\vdotswithin{=}
感谢您提供任何解决方案。
\documentclass{extbook}
\usepackage{amsmath}
\begin{document}
\begin{equation}
\begin{aligned}
t_1 l_1(x_1) + t_2 l_1(x_2) + \dots + t_{q+1} l_1(x_{q+1}) &= 0 \\
\begin{gathered}
\vdots
\end{gathered} \\
t_1 l_q(x_1) + t_2 l_q(x_2) + \dots + t_{q+1} l_q(x_{q+1}) &= 0.
\end{aligned}
\end{equation}
\end{document}
编辑
@egreg 的回答对于我首先发布的特定示例很有用,但我正在寻找一个通用解决方案,因为我也想对以下方程组做同样的事情:
\begin{align*}
a_{11}x_1 + \ldots + a_{1n}x_n &= y_1 \\
&\vdots \\
a_{n+1,1}x_1 + \ldots + a_{n+1,n}x_n &= y_{n+1}.
\end{align*}
答案1
您可以定义省略前导码并执行两列居中的\cvdots
宏。\halign
\vdots
\def\cvdots {\omit\span\omit \hfil$\vdots$\hfil}
\begin{align*}
a_{11}x_1 + \ldots + a_{1n}x_n &= y_1 \\
\cvdots \\
a_{n+1,1}x_1 + \ldots + a_{n+1,n}x_n &= y_{n+1}.
\end{align*}
答案2
对于特殊情况,我会欺骗 TeX,让它认为 1 与下标中的 q 具有相同的宽度,因此对齐是自动的。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[
\newcommand{\1}{\ooalign{%
\hphantom{$\scriptstyle q$}\cr
\hidewidth$\scriptstyle 1$\hidewidth\cr
}}
\begin{gathered}
t_1 l_{\1}(x_1) + t_2 l_{\1}(x_2) + \dots + t_{q+1} l_{\1}(x_{q+1}) = 0 \\
\vdots \\
t_1 l_q(x_1) + t_2 l_q(x_2) + \dots + t_{q+1} l_q(x_{q+1}) = 0\makebox[0pt][l]{.}
\end{gathered}
\]
\end{document}
尾随标点符号设置在零宽度框中,以保持相同的宽度。
如果您想要更紧密的排版:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[
\newcommand{\1}{\ooalign{%
\hphantom{$\scriptstyle q$}\cr
\hidewidth$\scriptstyle 1$\hidewidth\cr
}}
\begin{gathered}
t_1 l_{\1}(x_1) + t_2 l_{\1}(x_2) + \dots + t_{q+1} l_{\1}(x_{q+1}) = 0 \\[-6pt]
\vdots \\[-4pt]
t_1 l_q(x_1) + t_2 l_q(x_2) + \dots + t_{q+1} l_q(x_{q+1}) = 0\makebox[0pt][l]{.}
\end{gathered}
\]
\end{document}
对于“自动”版本,您需要确保测量显示器时不会\multispan
受到干扰。
\documentclass{article}
\usepackage{amsmath}
\makeatletter
\def\fixed@vdots{%
\hbox{\smash{$\vcenter{
\baselineskip4\p@\lineskiplimit\z@
\hbox{.}\hbox{.}\hbox{.}
}$}}\mathstrut
}
\newcommand{\centeredvdots}[1]{%
\ifmeasuring@\else\multispan{#1}\hfill\fixed@vdots\hfill\fi
}
\makeatother
\begin{document}
\begin{equation}
\begin{aligned}
t_1 l_{1}(x_1) + t_2 l_{1}(x_2) + \dots + t_{q+1} l_{1}(x_{q+1}) &= 0 \\
\centeredvdots{2} \\
t_1 l_q(x_1) + t_2 l_q(x_2) + \dots + t_{q+1} l_q(x_{q+1}) &= 0.
\end{aligned}
\end{equation}
\begin{equation}
\begin{aligned}
a&=b & c&=d \\
\centeredvdots{2} & \centeredvdots{2} \\
x&=y & z&=w \\
\centeredvdots{4} \\
uu&=vv & ccc&=ddd
\end{aligned}
\end{equation}
\end{document}