在报价环境中水平移动某些项目

在报价环境中水平移动某些项目

考虑一下代码

\documentclass[10pt]{book}
\usepackage{lipsum}

\begin{document}
\thispagestyle{empty}
\begin{quote}
\item \lipsum[3]
{\setlength\itemindent{15pt} \item \lipsum[3]}
\end{quote}
\end{document}

产生

在此处输入图片描述

我试图将第二项完全水平移动15pt到右侧;但是,该命令{\setlength\itemindent{15pt} \item \lipsum[3]}只影响第一行的 15pt 缩进(我想,这是我在代码中要求的。)

问题:我如何水平移动第二项,比如说向右移动 15pt,以便第二段文本(与第一段相同)位于第一段文本下方,但向右移动 15pt?似乎应该有一种简单的方法可以做到这一点,但我还没有找到。

谢谢。

答案1

在列表环境中,例如quote,每个段落都使用

\parshape1 \@totallleftmargin \linewidth

您可以在本地修改设置:

\documentclass[10pt]{book}
\usepackage{lipsum}

\makeatletter
\newenvironment{shiftquote}[1]{%
  \par
  \advance\@totalleftmargin#1\relax
  %\advance\linewidth -#1\relax % uncomment for keeping the right margin
  \parshape\@ne \@totalleftmargin \linewidth
}{\par}
\makeatother

\begin{document}

\begin{quote}
\lipsum[3]

\begin{shiftquote}{15pt}
\lipsum[3][1-3]

\lipsum[3][4-7]
\end{shiftquote}

\lipsum[3]
\end{quote}

\end{document}

在此处输入图片描述

答案2

您可以使用该quoting包:

\documentclass{article}
\usepackage{lipsum}
\usepackage{quoting}
\pagestyle{empty}
\begin{document}
\begin{quoting}[indentfirst=false,leftmargin=15pt,rightmargin=15pt]
  \lipsum[3]

  \begin{quoting}[indentfirst=false,leftmargin=15pt,rightmargin=-15pt]
    \lipsum[3]
  \end{quoting}
\end{quoting}
\end{document}

输出

相关内容