使用额外缩进右对齐引文

使用额外缩进右对齐引文

我想在文档中插入一个引文,使其右对齐、斜体,并在右边距留出一些额外的缩进,这是我目前所做的:

\documentclass{book} 
\usepackage{lipsum}
\begin{document}

\hfill\textit{This is a very boring,}

\hfill\textit{text without any substance} {\vspace{0.5em}}

\hfill\textit{A future book}

\hfill\textit{Ann Onymous}

\lipsum[5]

\end{document}

它看起来是这样的(注意——与右边距齐平):

有

但我希望它看起来像这样(注意——右边距插入):

想

答案1

首先,您应该为此定义一个环境(或命令),这样您就可以通过对定义进行一次更改来更改所有题词中的格式。

您的目标可以通过以下方式实现tabular:指定右对齐,左侧无填充,右侧有 2em 填充,因此参数tabular应为

@{} r @{\hspace{2em}}

这是定义。

\newenvironment{myepigraph}
  {\par\hfill\itshape
   \begin{tabular}{@{}r@{\hspace{2em}}}} % 2em from the right margin
  {\end{tabular}\par\medskip}

然后你的题词可以排版

\begin{myepigraph}
This is a very boring,\\
text without any substance\\[1.5ex]
A future book\\
Ann Onymous
\end{myepigraph}

然而,你应该看看epigraph具有此类功能的包。

答案2

除了使用tabular环境之外,您还可以使用例如epigraph包裹或我的quoting包裹:

  • \epigraph命令为当前的情况提供了更清晰的语法(在第一个参数中指定引用的文本,在第二个参数中指定来源),但似乎没有简单的方法可以为右对齐的引号添加缩进。

  • 环境quoting通常用于运行文本中的引号(因此您必须手动分离引号文本和源[编辑:或定义一个myquote以源作为附加参数的环境]),但它允许指定额外的缩进。


\documentclass{book} 

\usepackage{epigraph}
\setlength{\epigraphwidth}{0.35\linewidth}
\setlength{\epigraphrule}{0pt}
\renewcommand*{\textflush}{flushright}
\renewcommand*{\epigraphsize}{\normalsize\itshape}

\usepackage{quoting}

\newcommand*{\myquotingsource}{}
\newenvironment{myquoting}[1]{%
  \renewcommand*{\myquotingsource}{#1}
  \begin{quoting}[font={itshape,raggedleft},leftmargin=0.5\linewidth,rightmargin=2em]%
}{%
  \par\medskip
  \myquotingsource
  \end{quoting}%
}

\usepackage{lipsum}

\begin{document}

\epigraph{This is a very boring text without any substance.}{A future book\\Ann Onymous}

\lipsum[5]

\begin{myquoting}{A future book\\Ann Onymous}
This is a very boring text without any substance.
\end{myquoting}

\lipsum[5]

\end{document}

在此处输入图片描述

相关内容