將自訂報價環境包含在 csquotes 的報價中

將自訂報價環境包含在 csquotes 的報價中

我正在使用以下aquote環境來建立引用,並將作者姓名放置在引用的右下角(在投影機中)。使用這個巨集是因為作者姓名可以被「壓縮」到前一行的空格(如果有的話)。

我的乳膠技術有限。是否可以重新定義此環境以 \enquote{} 引用中的文字?我不知道該怎麼做。

\documentclass{beamer}

\usepackage[style=british]{csquotes}

\def\signed #1{{\leavevmode\unskip\nobreak\hfil\penalty50\hskip1em
  \hbox{}\nobreak\hfill #1%
  \parfillskip=0pt \finalhyphendemerits=0 \endgraf}}

\newsavebox\mybox
\newenvironment{aquote}[1]
  {\savebox\mybox{#1}\begin{quote}}
  {\vspace*{1mm}\signed{\usebox\mybox}\end{quote}}

\begin{document}

\begin{frame}
      Example:
      \begin{aquote}{Author Name}
      This is an example with some text that goes across more than one line.    
      \end{aquote}

\end{frame}

\end{document}

我使用的這個宏基於本網站上發布的原始宏,但經過了輕微定制以與投影儀配合使用。如果我可以在這個網站上找到原始範例,我將在下面連結它。

在此輸入影像描述

答案1

這是一個您可能需要根據您的字體進行調整的解決方案(\hspace)。

引用範例

\documentclass{beamer}

\usepackage[style=british]{csquotes}

\def\signed #1{{\leavevmode\unskip\nobreak\hfil\penalty50\hskip1em
  \hbox{}\nobreak\hfill #1%
  \parfillskip=0pt \finalhyphendemerits=0 \endgraf}}

\newsavebox\mybox
\newenvironment{aquote}[1]
  {\savebox\mybox{#1}\begin{quote}\openautoquote\hspace*{-.7ex}}
  {\unskip\closeautoquote\vspace*{1mm}\signed{\usebox\mybox}\end{quote}}

\begin{document}

\begin{frame}
      Example:
      \begin{aquote}{Author Name}
      This is an example with some text that goes across more than one line.    
      \end{aquote}

\end{frame}

\end{document}

相關內容