使用小字体和双引号符号重新定义引用环境?

使用小字体和双引号符号重新定义引用环境?

我想quote以这样的方式重新定义环境以获得以下代码的输出。

\begin{quote}{\tiny\textquotedblleft Text \textquotedblright}\end{quote}

我还想修复行距,因为行之间的距离看起来很宽。

答案1

quote这是环境的原始定义article

\newenvironment{quote}
               {\list{}{\rightmargin\leftmargin}%
                \item\relax}
               {\endlist}

以下是根据您的要求以 MWE 形式重新定义的:

在此处输入图片描述

\documentclass{article}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\renewenvironment{quote}
               {\list{}{\rightmargin\leftmargin}%
                \item\relax\tiny\textquotedblleft\ignorespaces}
               {\unskip\unskip\textquotedblright\endlist}
\begin{document}
\lipsum[1]
\begin{quote}
\lipsum*[2]
\end{quote}
\lipsum[3]
\end{document}

\ignorespacesat的修正\begin{quote}是删除开头之间的所有空格,而 at 的修正是删除开头之间的所有空格\unskip\unskip\end{quote}另外,不要将内容包装在 group 中{ },因为 group 会产生不必要的空格。

请注意,这将替换现有quote环境。如果您打算使用原始格式,最好altquote为此目的定义一个新的(比如说)环境。


的更新版本quote允许添加一个可选参数[name],该参数在前面加上“姓名说:“在添加引号之前。如果没有name提供,则默认设置quote(上面)为:

在此处输入图片描述

\documentclass{article}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage{ifmtarg}% http://ctan.org/pkg/ifmtarg
\makeatletter
\renewenvironment{quote}[1][]
               {\list{}{\rightmargin\leftmargin}%
                \item\relax\tiny\@ifmtarg{#1}{\relax}
                  {\textbf{#1}~said:~}\textquotedblleft\ignorespaces}
               {\unskip\unskip\textquotedblright\endlist}
\makeatother
\begin{document}
\lipsum[1]
\begin{quote}
\lipsum*[2]
\end{quote}
\lipsum[3]
\begin{quote}[bkarpuz]
\lipsum*[4]
\end{quote}
\end{document}

空参数测试由ifmtarg包裹有条件的

\@ifmtarg{<arg>}
  {<Code for arg empty>}
  {<Code for arg not empty>}

答案2

您可以使用quoting我的同名包的环境。quoting提供键值选项来配置,例如字体属性和附加文本,这些选项可以全局更改,也可以针对单个环境更改(使用环境的可选参数)。请注意,您需要当前软件包版本 0.1b 才能使用begintextendtext选项。还请注意,font键支持所有类型的不带参数的 LaTeX 字体切换/格式化宏——例如,您可以指定font={tiny,bfseries,doublespacing}doublespacing使用setspace包已加载)。

\documentclass{article}

\usepackage[font=tiny,begintext=\textquotedblleft,endtext=\textquotedblright]{quoting}

\newcommand*{\sometext}{Lorem ipsum dolor sit amet, consectetuer
    adipiscing elit. Ut purus elit, vestibulum ut, placerat ac,
    adipiscing vitae, felis. Curabitur dictum gravida mauris. Nam arcu
    libero, nonummy eget, consectetuer id, vulputate a, magna.}

\begin{document}

\sometext
% <-- first line of following `quoting` environment not indented
\begin{quoting}
\sometext
\end{quoting}
%
\begin{quoting}[begintext={Some special text: \textquotedblleft}]
\sometext
\end{quoting}
% <-- first line after `quoting` environment not indented
\sometext

\end{document}

在此处输入图片描述

相关内容