文本左边距(局部“边距”)

文本左边距(局部“边距”)

如何在文本块中添加左侧空间?(见下面的尝试和图片)

我能想到两种方法:

小页面

\documentclass{article}

\usepackage{lipsum}

\begin{document}

\lipsum[1]

\noindent
\hspace{2em}%
\begin{minipage}{0.95\textwidth}
\lipsum[2-3]
\end{minipage}

\end{document}

小页面

三个问题:

  1. 我无法在该小页面中使用另一个小页面(在我的用例中我需要它)
  2. 缩进和段落间距似乎发生了变化
  3. 传递什么作为宽度可选参数?

枚举项

使用itemize以下enumitem选项:

\documentclass{article}

\usepackage{lipsum}
\usepackage{enumitem}  % needed!

\begin{document}

\lipsum[1]

\begin{itemize}[label={},leftmargin=2em]
\item \lipsum[2-3]
\end{itemize}

\end{document}

它失去了缩进,并且段落间距与其他部分略有不同,但看起来好多了:

枚举项

无论如何,还有其他建议吗?

(副本:我怎样才能更改部分文本的边距?

答案1

addmargin以下是使用以下定义的环境的建议包裹scrextend

\documentclass{article}
\usepackage{lipsum}
\usepackage{scrextend}
\begin{document}
\lipsum[1]
\begin{addmargin}[2em]{0em}
\lipsum[2-3]
\end{addmargin}
\end{document}

在此处输入图片描述

请注意,这scrextend是一个使用某些 KOMA-Script 功能的包,就像addmargin其他类一样。因此,如果您使用 KOMA-Script 类,则无需加载scrextend

答案2

考虑到@touhami 的评论和来自另一个问题的这个答案,下面是使用另外两种方法处理局部段落边距的 MWE:

\documentclass{article}

\usepackage{lipsum}

% \adjustwidth
\usepackage{changepage}

% https://tex.stackexchange.com/a/600/34244
%\def\changemargin#1#2{\list{}{\rightmargin#2\leftmargin#1}\item[]}
%\let\endchangemargin=\endlist

% touhaim's suggestion:
\def\changemargin#1#2{\list{}{%
\setlength{\leftmargin}{#1}%
\setlength{\rightmargin}{#2}%
\setlength{\topsep}{0pt}%
\setlength{\parsep}{\parskip}%
\setlength{\itemindent}{\parindent}%
\setlength{\listparindent}{\parindent}%
}\item[]}

\begin{document}

\lipsum[1]

\begin{adjustwidth}{4cm}{4cm}
\lipsum[2]
\end{adjustwidth}

\lipsum[3]

\begin{changemargin}{4cm}{4cm} 
\lipsum[4]
\end{changemargin}

\lipsum[5]

\end{document}

相关内容