flalign 在新环境中不起作用

flalign 在新环境中不起作用

我有以下内容:

\newenvironment{examplebox}[1]{
    \begin{flalign*}
}
{
    \end{flalign*}
}

\begin{examplebox}{Test}
    & \lim_{x \to 2} f(x)
\end{examplebox}

这会导致以下两个错误:

LaTeX Error: \begin{examplebox} on input line 47 ended by \end{document}.
LaTeX Error: \begin{flalign*} on input line 47 ended by \end{examplebox}

如果每次我 \begin 时都将 flalign 放入环境中,环境就会正常工作。但是,我希望将其放在 \newenvironemnt 中,因为我想在其周围添加样式,并使其每次需要时都可以轻松重现。此外,我还没有决定它的样式,因为我更关注文档的内容,所以我希望能够更改一次并让它更改它的所有实例。

此错误是否有任何特殊原因,或者这只是 flalign 的限制。如果是限制,那么是否有其他替代方案?

答案1

这是对齐的一个常见问题amsmath。你可能

\makeatletter
\newenvironment{examplebox}[1]{%
  % do something with #1
  \start@align\tw@\st@rredtrue\m@ne
}
{\endalign}
\makeatother

但使用起来更简单ltcmd(以前xparse):

\NewDocumentEnvironment{examplebox}{mb}{%
  % do something with #1
  \begin{flalign*}#2\end{flalign*}%
}{}

相关内容