来自“amsart”的地址更改最后一个空的“\paragraph{}”

来自“amsart”的地址更改最后一个空的“\paragraph{}”

今天使用amsart类时我注意到如果我们以 . 结尾文件,则会出现奇怪的输出\paragraph{}

在这种情况下,最后一段成为地址的一部分,因为它插入在地址前面并且与其他字体一起。

我知道我们可以解决这个问题,只需在后面插入空格(这样该行就不为空)。我也知道有人可能会问为什么要以这样的一段话来结束呢?但我只是想通过这个奇怪的输出来学习。

我认为清晰段落在这种情况下会很好,所以地址将开始一个新块。

平均能量损失

\documentclass{amsart}
\title{Title}
\author{Author}
\address{Address}
\begin{document}
\maketitle

Foo

\paragraph{Paragraph here}

\paragraph{Another paragraph here}
\end{document}

在此处输入图片描述

答案1

解决方法如下:

\documentclass{amsart}
\usepackage{etoolbox}

\makeatletter
\preto\@setaddresses{\if@noskipsec\mbox{}\fi}
\makeatother

\title{Title}
\author{Author}
\address{Address}
\begin{document}
\maketitle

Foo

\paragraph{Paragraph here}

\paragraph{Another paragraph here}

\end{document}

但是,\paragraph{...}如果没有任何后续文本,则输入无论如何都是错误的。

\if@noskipsec当 LaTeX 已吸收了章节标题并等待其后的第一个段落时,条件为真。修复后,如果在打印地址时条件仍然为真,我们将发出\mbox{},它提供所需的文本(触发打印章节标题,如果它是内联的),因此\par发出的\@setaddresses有效。

相关内容