在子堆栈中设置宽度

在子堆栈中设置宽度

我知道在子堆栈中对齐但是我正在尝试另一种解决方案,并想了解为什么它不起作用:

\documentclass{article}%
\usepackage{amsmath}%
\newlength{\mylength}%
\newcommand{\before}{k_\rho k_\rho k_\rho k_\rho}%
\begin{document}%
\LARGE
\begin{align}%
%\substack{% <-- uncomment this line
\before=something\\%
\settowidth{\mylength}{\ensuremath{\before}}%
\hspace{\mylength}=something\\%
%}% <-- uncomment this line
\end{align}%
\end{document}%

首先,在multline或中对齐工作正常align。但在 中substack,对齐不正常,=没有对齐。

答案1

$X_{a=b}$这与比较相同$X_{\mbox{$a=b$}}$,如果您在框内开始一个新的数学表达式,即使您在下标中,它也将是文本大小。明确添加\scriptstyle可以让您回到正轨。

\documentclass{article}
\usepackage{amsmath}
\newlength{\mylength}
\newcommand{\before}{\scriptstyle k_\rho k_\rho k_\rho k_\rho}
\begin{document}
\LARGE
\begin{align}
\substack{% <-- uncomment this line
\before=something\\
\settowidth{\mylength}{\ensuremath{\before}}%
\hspace{\mylength}=something\\%
}% <-- uncomment this line
\end{align}
\end{document}

相关内容