在排版数学课程的问题和答案时,我经常需要在枚举中使用公式。在以下示例中,我使用环境alignedat
将函数方程水平对齐在=
符号处。这就是为什么我不将它们排版为单独的段落。
但我希望实现的是,第一的方程在枚举标签处垂直对齐。在上面的例子中,它应该看起来像
“b)f'(x)= ...”
代替
“b)f''(x)= ...”
当然,我可以尝试用 来\raisebox{}
纠正垂直偏移。有人知道在结合enumerate
和 时,在每种情况下都有效的解决方案alignedat
吗?
以下是上图所示的 MWE:
\documentclass[fontsize=11pt, paper=a4, DIV=9]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{amsmath}
\usepackage{enumitem}
\setlist[enumerate, 1]{label=\alph*), font=\sffamily\bfseries}
\begin{document}
\begin{enumerate}
\item Some stuff
\item
\begin{math}
\begin{alignedat}{2}
f'(x) &= \dfrac{4 \, x}{\left( x^2 + 1 \right)^2} \\[1ex]
f''(x) &= \dfrac{-12 \, x^2 + 4}{\left( x^2 + 1 \right)^3} \\[1ex]
f'''(x) &= \dfrac{48 \, x^3 - 48 \, x}{\left( x^2 + 1 \right)^4}
\end{alignedat}
\end{math}
\item Other stuff
\end{enumerate}
\end{document}
答案1
一旦 OP 澄清对齐应该与第一个方程一致,修复就会变得非常容易。
选项 1:使用[t]
选项
环境alignedat
采用[t]
指定顶部对齐的选项。
\documentclass[fontsize=11pt, paper=a4, DIV=9]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{amsmath}
\usepackage{enumitem}
\setlist[enumerate, 1]{label=\alph*), font=\sffamily\bfseries}
\begin{document}
\begin{enumerate}
\item Some stuff
\item
\begin{math}
\begin{alignedat}[t]{2}
f'(x) &= \dfrac{4 \, x}{\left( x^2 + 1 \right)^2} \\[1ex]
f''(x) &= \dfrac{-12 \, x^2 + 4}{\left( x^2 + 1 \right)^3} \\[1ex]
f'''(x) &= \dfrac{48 \, x^3 - 48 \, x}{\left( x^2 + 1 \right)^4}
\end{alignedat}
\end{math}
\item Other stuff
\end{enumerate}
\end{document}
选项 2:TABstacks
使用 形式的 TABstack\alignLongunderstack
代替alignedat
。不需要粉碎或特殊间距规定。请注意,\alignLongunderstack
保留了方程间基线跳跃。如果想在方程之间设置固定间隙,则\alignShortunderstack
可以使用 。
\documentclass[fontsize=11pt, paper=a4, DIV=9]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{amsmath}
\usepackage{enumitem}
\setlist[enumerate, 1]{label=\alph*), font=\sffamily\bfseries}
\usepackage{tabstackengine}
\begin{document}
\begin{enumerate}
\item Some stuff
\item
\ensureTABstackMath{\setstackgap{L}{42pt}
\alignLongunderstack{
f'(x) =& \dfrac{4 \, x}{\left( x^2 + 1 \right)^2} \\
f''(x) =& \dfrac{-12 \, x^2 + 4\dfrac{x^2}{x}}{\left( x^2 + 1 \right)^3} \\
f'''(x) =& \dfrac{48 \, x^3 - 48 \, x}{\left( x^2 + 1 \right)^4}
}}
\item Other stuff
\end{enumerate}
\end{document}
以下是短堆栈的情况:
\documentclass[fontsize=11pt, paper=a4, DIV=9]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{amsmath}
\usepackage{enumitem}
\setlist[enumerate, 1]{label=\alph*), font=\sffamily\bfseries}
\usepackage{tabstackengine}
\begin{document}
\begin{enumerate}
\item Some stuff
\item
\ensureTABstackMath{\setstackgap{S}{8pt}
\alignShortunderstack{
f'(x) =& \dfrac{4 \, x}{\left( x^2 + 1 \right)^2} \\
f''(x) =& \dfrac{-12 \, x^2 + 4\dfrac{x^2}{x}}{\left( x^2 + 1 \right)^3} \\
f'''(x) =& \dfrac{48 \, x^3 - 48 \, x}{\left( x^2 + 1 \right)^4}
}}
\item Other stuff
\end{enumerate}
\end{document}