当我在参数中添加 \par 时出现错误“段落在 \text@command 完成之前结束”?

当我在参数中添加 \par 时出现错误“段落在 \text@command 完成之前结束”?

我编写了一个命令,将文本加粗并添加换行符。对于单行文本,它运行良好,但如果我想向其传递一个参数,它就无法正常工作。

我该如何解决这个错误?

这是我的 EMV:

\documentclass[ebook,11pt,twoside,openright,showtrims]{memoir}

\newcommand{\ccesec}[1]{%
    \par% Start a new paragraph
    \addvspace{\baselineskip}% Space above
    \textbf{#1}%
    %\par
}
\begin{document}
    \ccesec{Cristo se ofreció a su Padre por nuestros pecados \par Toda la vida de Cristo es oblación al Padre}
\end{document}

如果我删除,\par错误就会消失,但在这种情况下我需要一个新段落。在其他情况下,会出现没有 的行\par

答案1

我认为,这更自然地是强制换行,而不是新段落,因此您可以将其标记为

\documentclass[ebook,11pt,twoside,openright,showtrims]{memoir}

\newcommand{\ccesec}[1]{%
    {\par\raggedright% Start a new paragraph
    \addvspace{\baselineskip}% Space above
    \textbf{\ignorespaces#1}%
    \par}%
}
\begin{document}
    \ccesec{
Cristo se ofreció a su Padre por nuestros pecados\\
Toda la vida de Cristo es oblación al Padre}
\end{document}

但如果你想使用段落,请使用声明形式,\bfseries

\documentclass[ebook,11pt,twoside,openright,showtrims]{memoir}

\newcommand{\ccesec}[1]{%
    {\par\raggedright% Start a new paragraph
    \addvspace{\baselineskip}% Space above
    \bfseries\ignorespaces#1%
    \par}
}
\begin{document}
    \ccesec{
Cristo se ofreció a su Padre por nuestros pecados

Toda la vida de Cristo es oblación al Padre}
\end{document}

相关内容