定义一个命令,用于在引文中将标题设为斜体、粗体和居中

定义一个命令,用于在引文中将标题设为斜体、粗体和居中

在我的引文中,我有一个粗体、斜体和居中的标题。我如何定义命令以便一次性排版此文本?我尝试过:

\newcommand{\QuoteTitle}[1]{\centerline{\textit{\textbf{#1}}}}

但它只是把整个东西塞在一行上!

根据以下输入,我需要它看起来像这样:

\begin{quote}
``\QuoteTitle{Quot paria coniculorum in uno anno ex uno pario germinentur.}

Qvidam posuit unum par cuniculorum in quodam loco, qui erat undique
pariete circundatus, ut sciret, quot ex eo paria germinarentur in uno
....''
\end{quote}

应该产生以下输出:

在此处输入图片描述

答案1

我认为重新定义环境以采用可选参数可能会更容易quote,这样它就可以用作

\begin{quote}
...
\end{quote}

或者

\begin{quote}[Title goes here]
...
\end{quote}

因此,在下面的代码中,我正是这样做的,使用

\let\oldquote\quote
\let\oldendquote\endquote

然后,借用\empty 和 \@empty 之间有什么区别?quote环境重新定义为

\renewenvironment{quote}[1][]{\oldquote%
        \if\relax\detokenize{#1}\relax
        ``
        \else
            \begin{center}%
            ``{\bfseries\itshape #1}%
            \end{center}\nobreak
        \fi}{''\oldendquote}

截屏

以下是完整的 MWE

\documentclass{article}

\let\oldquote\quote
\let\oldendquote\endquote

\renewenvironment{quote}[1][]{\oldquote%
        \if\relax\detokenize{#1}\relax
        ``
        \else
            \begin{center}%
            ``{\bfseries\itshape #1}%
            \end{center}\nobreak
        \fi}{''\oldendquote}

\begin{document}

\begin{quote}
  Qvidam posuit unum par cuniculorum in quodam loco, qui erat undique
  pariete circundatus, ut sciret, quot ex eo paria germinarentur in un
  Qvidam posuit unum par cuniculorum in quodam loco, qui erat undique
  pariete circundatus, ut sciret, quot ex eo paria germinarentur in un
\end{quote}

\begin{quote}[Here's one with a title]
  Qvidam posuit unum par cuniculorum in quodam loco, qui erat undique
  pariete circundatus, ut sciret, quot ex eo paria germinarentur in un
  Qvidam posuit unum par cuniculorum in quodam loco, qui erat undique
  pariete circundatus, ut sciret, quot ex eo paria germinarentur in un
\end{quote}
\end{document}

相关内容