我有一个环境 >>Satz<<(德语为 >>theorem<<),以 \diamond 结尾。但如果定理以案例结尾,则菱形设置不正确。它要么在新行中(但至少在右边缘),要么就在案例中的最后一个字符后面(但至少在正确的行中)。
这是我的 MWE:
\documentclass{article}
\usepackage{amsmath,amsthm}
\usepackage{etoolbox}
\usepackage{cases}
\theoremstyle{definition}
\newtheorem{satz}{Satz}
\AtBeginEnvironment{satz}{%
\pushQED{\qed}\renewcommand{\qedsymbol}{$\diamond$}%
}
\AtEndEnvironment{satz}{\popQED\endsatz}
\begin{document}
\begin{satz}
This works.
\end{satz}
\begin{satz}
This works.
\begin{align*}
f(x) &= \bigl( g(x) \bigr) \\
h(x) &= \bigl( r(x) \bigr).\qedhere
\end{align*}
\end{satz}
\begin{satz}
This
\[
\begin{cases}
\text{does} \\
\text{not}.
\end{cases}
\]
\end{satz}
\begin{satz}
And this
\[
\begin{cases}
\text{doesn't} \\
\text{either}. \qedhere
\end{cases}
\]
\end{satz}
\end{document}
答案1
我基本同意Egreg 所说的内容,但如果必须的话,你可以使用以下方法实现此效果empheq
,方法是在 的左侧放置一个括号align*
。 (我还删除了 ,\usepackage{cases}
因为几乎你想用该包做的任何事,你都可以用 来做empheq
。)
\documentclass{article}
\usepackage{amsmath,amsthm}
\usepackage{empheq}
\usepackage{etoolbox}
\theoremstyle{definition}
\newtheorem{satz}{Satz}
\AtBeginEnvironment{satz}{%
\pushQED{\qed}\renewcommand{\qedsymbol}{$\diamond$}%
}
\AtEndEnvironment{satz}{\popQED\endsatz}
\begin{document}
\begin{satz}
This
\begin{empheq}[left=\empheqlbrace]{align*}
& \text{does,} \\
& \text{YAY}. \qedhere
\end{empheq}
\end{satz}
\end{document}