ntheorem 没有将标记放在下一行

ntheorem 没有将标记放在下一行

嗨,有人有解决方案吗:

\documentclass[12pt,reqno,a4paper,draft]{article}
\usepackage[margin=3.cm,heightrounded]{geometry}
\usepackage{mathtools,amsmath,amssymb}
\usepackage[amsmath,thmmarks]{ntheorem}
\theoremseparator{.}
\theoremstyle{nonumberplain}
\theoremheaderfont{\itshape}
\theorembodyfont{\normalfont}
\theoremsymbol{\enspace\ensuremath{\Box}}
\newtheorem{proof}{Proof}
\begin{document}
\begin{proof}
  Blah
  \begin{equation*}
    blah
  \end{equation*}
  which always hold a an normal almost contact 
  metric structure (see [1, Lemma~2.1]).
\end{proof}
\end{document}

可以看出,框溢出了行,而不是移动到下一行。最后一行的文本跨越了整个文本宽度。

答案1

如果你允许(但不鼓励)换行并允许符号向右齐平,那么在这种情况下似乎效果更好:

\theoremsymbol{\nolinebreak[1]\hspace*{.5em plus 1fill}\ensuremath{\Box}}

相关内容