我有公式:
\[ A_k = \bigcup_{I \subset \{ 1,...,k \} \text{card} J = K} B_j\]
从而产生
我想问如何在下标内创建新行。它应该看起来像下面的公式:
我已尝试使用 \newline 和 \begin{align*},但是不起作用。
答案1
您可以使用\substack
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[ A_k = \bigcup_{\substack{I \subset \{ 1,\dots,k \}\\ \text{card} J = K}} B_j\]
\end{document}
如果您觉得有很多空白,可以按照以下方法将其清除。此方法使用\mathclap
来自mathtools
。
\documentclass{article}
\usepackage{mathtools}
\begin{document}
\[ A_k = \bigcup_{\mathclap{\substack{I \subset \{ 1,\dots,k \}\\ \text{card} J = K}}} B_j\]
\end{document}
回复评论
其内部工作原理如下align*
:
\documentclass{article}
\usepackage{mathtools}
\begin{document}
\begin{align*}
A_k &= \bigcup_{\mathclap{\substack{I \subset \{ 1,\dots,k \}\\ \text{card} J = K}}} B_j\\
A_k &= \bigcup_{\mathclap{\substack{I \subset \{ 1,\dots,k \}\\ \text{card} J = K}}} B_j
\end{align*}
\end{document}
答案2
虽然不如公认的解决方案那么精简,但我还是将此解决方案添加到组合中,因为它显示 2 行下标左对齐,如您的示例所示,而公认的解决方案(到目前为止)没有。我还在 中制作了下标\scriptscriptstyle
,这对于多行下标来说可能更可取。堆叠线之间的垂直间隙是可调的。
\documentclass{article}
\usepackage{stackengine}
\usepackage{amsmath}
\parskip 1em
\begin{document}
\[ \def\useanchorwidth{T}\stackMath
A_k = \mathop{\stackunder{\bigcup}{\def\stackalignment{l}%
\stackunder[2pt]{\scriptscriptstyle I \subset \{ 1,...,k \}}
{\scriptscriptstyle\text{card} J = K}
}} B_j\]
\[ \def\useanchorwidth{F}\stackMath
A_k = \mathop{\stackunder{\bigcup}{\def\stackalignment{l}%
\stackunder[2pt]{\scriptscriptstyle I \subset \{ 1,...,k \}}
{\scriptscriptstyle\text{card} J = K}
}} B_j\]
\end{document}