当证明以公式equation
或equation*
环境中的公式结尾时,\qedhere
在方程式后面放置会导致 QED 符号出现在正确的位置。即在方程式出现的行的末尾。例如:
\begin{equation}
x = y+z \qedhere
\end{equation}
align
但是,当公式位于/align*
环境中时,使用相同方法无法获得相同的结果:
\begin{align}
x &= a+b \\
&= y+z \qedhere
\end{align}
正方形出现在 (y+z) 之后,并没有移动到页面的右边界。
以下是 MWE:
\documentclass[a4paper]{article}
\usepackage{hyperref}
\usepackage{amsthm}
\usepackage[cmex10]{amsmath}
\interdisplaylinepenalty=2500
\usepackage{amssymb}
\title{Example to Show QED is Misplaced}
\author{}
\begin{document}
\begin{proof}
This proof is typeset correctly:
\begin{equation*}
x = y + z \qedhere
\end{equation*}
\end{proof}
\begin{proof}
But this one not!
\begin{align*}
x & = u + v \\
& = y + z \qedhere
\end{align*}
\end{proof}
\end{document}
答案1
改变顺序,这样就可以了,amsthm
后 amsmath
否则它可能很难钩住align*
\documentclass[a4paper]{article}
\usepackage{amsmath}
\usepackage{amsthm}
\interdisplaylinepenalty=2500
\usepackage{amssymb}
\usepackage{hyperref}
\title{Example to Show QED is Misplaced}
\author{}
\begin{document}
\begin{proof}
This proof is typeset correctly:
\begin{equation*}
x = y + z \qedhere
\end{equation*}
\end{proof}
\begin{proof}
But this one not!
\begin{align*}
x & = u + v \\
& = y + z \qedhere
\end{align*}
\end{proof}
\end{document}
答案2
第 5 条阿姆斯特丹包文档包含以下内容。
amsmath
与版本 2 或更高版本的软件包一起使用时,\qedhere
QED 符号将位于右侧齐平;使用早期版本时,符号将与文本或显示末尾相隔四分之一。如果\qedhere
在方程式中产生错误消息,请尝试使用\mbox{\qedhere}
。
但是,当我尝试使用您的示例时,我得到的 QED 符号位于显示屏末尾一个四边形处,尽管我的发行版包含 amsmath 版本 2.13。但是,使用
\tag*{\qedhere}
反而解决了这个问题。