如何更改文本块的缩进?

如何更改文本块的缩进?

这可能是一个很基础的问题,但我刚开始使用 LaTeX。我想要一个(最好是优雅的)解决方案,将一个文本块比其余文本稍微靠右一点,如下所示:在此处输入图片描述

答案1

quoting包及其同名环境使您能够完全控制环境的布局(字体、文本间距、左右边距等)。这里有一个小演示:

\documentclass{book}
\usepackage[utf8]{inputenc}%
\usepackage[T1]{fontenc} %
 \usepackage{quoting} %
\usepackage{lipsum}
\quotingsetup{font={itshape}, leftmargin=2em, rightmargin=0in, vskip=1ex}

 \begin{document}

 \lipsum[2]
\begin{quoting}
Sed feugiat. Cum sociis natoque penatibus et magnis dis parturient
 montes, nascetur ridiculus mus. Ut pellentesque augue sed urna.
 Vestibulum diam eros, fringilla et, consectetuer eu, nonummy id,
 sapien. Nullam at lectus. In sagittis ultrices mauris. Curabitur
 malesuada erat sit amet massa. Fusce blandit. Aliquam erat volutpat.
 Aliquam euismod. Aenean vel lectus. Nunc imperdiet justo nec dolor.
\end{quoting}
\lipsum[3]

\end{document} 

在此处输入图片描述

答案2

以下定义了一个环境indentedblock,允许您使用 进行\leftskip内部缩进。环境会抑制第一行的缩进,如果您希望该行缩进,请使用indentedblock*。您可以使用可选参数自定义左跳过。它会在自身周围添加一些垂直空间。以下段落将被缩进(您可以使用 来抑制它\noindent)。

\documentclass[]{article}

\makeatletter
\newenvironment{indentedblock*}[1][\parindent]
  {%
    \par
    \medskip
    \leftskip#1\relax
  }
  {%
    \par
    \medskip
  }
\newenvironment{indentedblock}[1][\parindent]
  {%
    \csname indentedblock*\endcsname[{#1}]%
    \@afterindentfalse\@afterheading
  }
  {%
    \csname endindentedblock*\endcsname
  }
\makeatother

\usepackage{duckuments} % only for dummy content

\begin{document}
\blindduck
\begin{indentedblock}
  \blindduck
\end{indentedblock}
\begin{indentedblock*}[5cm]
  \blindduck
\end{indentedblock*}
\blindduck
\end{document}

在此处输入图片描述

相关内容