垂直对齐下标

垂直对齐下标

我想对齐如下表达式中的下标:

\documentclass{article}
\usepackage{amsmath}
\begin{document}    
$$\sup_{f\in\mathcal H}\lim_{\epsilon\downarrow 0}\sup_{g\in\mathcal H,0<\|g\|<\epsilon} \text{something}$$
\end{document}

它看起来是这样的:

下标未对齐

我希望\epsilon \downarrow 0与其他两个下标位于同一行。

答案1

mathtools软件包为此提供了一个技巧:

\documentclass{article}
\usepackage{mathtools} % loads also amsmath
\begin{document}
\[
\adjustlimits\sup_{f\in\mathcal{H}}\lim_{\epsilon\downarrow 0}\sup_{g\in\mathcal{H},0<\|g\|<\epsilon} \text{something}
\]
\end{document}

\adjustlimits命令应该位于您希望下标对齐的一对运算符之前。

或者,您可以定义一个新的运算符用于以下情况:

\documentclass{article}
\usepackage{amsmath}
\DeclareMathOperator*{\plim}{lim\vphantom{p}}

\begin{document}
\[
\sup_{f\in\mathcal{H}}\plim_{\epsilon\downarrow 0}\sup_{g\in\mathcal{H}, 0<\|g\|<\epsilon} \text{something}
\]
\end{document}

在此处输入图片描述

有关$$在 LaTeX 中避免的内容,请参阅为什么\[ … \]优于$$

另外,最好\mathcal{H}使用括号来书写,以更清楚地表明所涉及的符号。

答案2

我在环境之外设置了 \arraystretch,因此它会影响一切,但我知道它也可以在环境内部设置以获得局部效果。

\documentclass{article}
\usepackage{scalerel}
\usepackage{amsmath}
\begin{document}    

Was:
$$\sup_{f\in\mathcal H}\lim_{\epsilon\downarrow 0}\sup_{g\in\mathcal
H,0<\|g\|<\epsilon} \text{something}$$

Is:
\renewcommand\arraystretch{0.6}
\setlength\arraycolsep{0.3ex}
\[
\begin{array}{cccl}
\sup & \lim & \sup & \text{something}\\
\scriptstyle f\in\mathcal H & \scriptstyle \epsilon\downarrow 0 & 
\scriptstyle g\in\mathcal H, 0<\|g\|<\epsilon & \\
\end{array}
\]

\end{document}

在此处输入图片描述

相关内容