自动添加引号

自动添加引号

我想创建一个新的环境,其行为类似于quote,但添加了引号。我尝试了类似这样的操作:

\newenvironment{newquote}{\itshape\color{blue!20!black!30!green}\begin{quote}“}{”\end{quote}}

但这会在引号和文本之间产生我不想要的空格。

引号和文本之间不需要的空格

答案1

我很想看看csquotes包来做你想做的事情。但是对于手头的问题,我怀疑你正在使用如下输入

\begin{newquote}
  He who plants a garden plants happiness.
\end{newquote}

这意味着在行尾添加了一个空格。尝试

\newenvironment{newquote}
 {\itshape\color{blue!20!black!30!green}\begin{quote}“\ignorespaces}
 {\unskip”\end{quote}}

或者%在源代码中添加一个来删除该行的末尾:

\begin{newquote}%
  He who plants a garden plants happiness.%
\end{newquote}

答案2

也许这有点过头了。前段时间,我正在寻找类似的东西。我写了一个小脚本,可以显示一些小引文来介绍我正在写的书中的一章。代码如下:

\newcommand{\chapterquote}[2]{
  \begin{figure*}[htb]
    \centering
    \begin{tikzpicture}
      \node[text width=12cm,anchor=center] (Q) at (0,0) {\Large\textit{#1}};
      \node[gray,anchor=north east] (Ql) at (Q.north west) {\Huge\textbf{``}};
      \node[gray,anchor=north west] (Qr) at (Q.south east) {\Huge\textbf{''}};
      \node[black!80,anchor=north east] (Qa) at (Qr.north west) {\small - #2};
    \end{tikzpicture}
  \end{figure*}
}

您需要使用tikz package。例如:

\chapterquote{To be, or not to be}{William Shakespeare}

这会产生类似这样的结果:

在此处输入图片描述

请随意尝试这个自定义命令。例如,您可以修改颜色和大小。

相关内容