![Springer latex 模板中出现空行的意外行为](https://linux22.com/image/449033/Springer%20latex%20%E6%A8%A1%E6%9D%BF%E4%B8%AD%E5%87%BA%E7%8E%B0%E7%A9%BA%E8%A1%8C%E7%9A%84%E6%84%8F%E5%A4%96%E8%A1%8C%E4%B8%BA.png)
我不明白为什么在下面的代码中需要在命令之间有一个空\abstract{...}
行\maketitle
。
如果有一个空行,下面的代码会按预期编译,如果没有空行,则会输出空的 pdf(或根本没有)。我使用的是提供的 latex 模板这里。
这是预期的行为吗?如果是,为什么没有编译?
最小工作示例:
\documentclass[default,pdflatex]{sn-jnl}
\title{Test}
\author{...}
\begin{document}
\abstract{
Abstract text here.
}
\maketitle
\section{Introduction}
Text here.
\end{document}
答案1
这是(糟糕:-)的设计。
全班都这样。
\long\def\abstract#1 \par{\def\@abstract{%
\let\paragraph\subabstracthead%
\abstractfont%
\abstracthead*{\abstractname}%
#1\par}}%
这意味着的参数\abstract
不是由给出的{...}
(你可以删除你使用的参数)。相反,它由一个文字空格后跟一个\par
或空白行来分隔,
您可以尝试向 Springer 投诉,尽管我怀疑情况不会改变。