这个问题解释了如何在enumerate
环境中使单个方程居中,但我不确定如何对多个方程执行同样的事情(例如gather
或align
)。
答案1
此外,amsmath
环境内部使用 TeX 的$$
显示方程。后者用于\displaywidth
方程的宽度和\displayindent
方程的左缩进。两者都可以更改。因此,以下示例修补了内部amsmath
宏以添加设置:
\displaywidth=\textwidth
\displayindent=-\leftskip
完整示例:
\documentclass{article}
\usepackage{amsmath}
\usepackage{etoolbox}
\makeatletter
\patchcmd\start@gather{$$}{%
$$%
\displaywidth=\textwidth
\displayindent=-\leftskip
}{}{\errmessage{Cannot patch \string\start@gather}}
\patchcmd\start@align{$$}{%
$$%
\displaywidth=\textwidth
\displayindent=-\leftskip
}{}{\errmessage{Cannot patch \string\start@align}}
\patchcmd\start@multline{$$}{%
$$%
\displaywidth=\textwidth
\displayindent=-\leftskip
}{}{\errmessage{Cannot patch \string\start@multline}}
\patchcmd\mathdisplay{$$}{%
$$%
\displaywidth=\textwidth
\displayindent=-\leftskip
}{}{\errmessage{Cannot patch \string\mathdisplay}}
\makeatother
\begin{document}
\begin{gather}
A=A
\end{gather}
\begin{enumerate}
\item Hello
\begin{gather}
A=A
\end{gather}
\item Hello
\begin{align}
A=A
\end{align}
\item Hello
\[
A=A
\]
\item Hello
\begin{equation}
A=A
\end{equation}
\begin{enumerate}
\item Hello
\begin{gather}
A=A
\end{gather}
\end{enumerate}
\end{enumerate}
\end{document}