设置 \setlength\parindent{0pt}' 后添加缩进

设置 \setlength\parindent{0pt}' 后添加缩进

我正在寻找一种在设置\parindent为 0 后添加缩进的方法。我尝试了适当数量的搜索,但似乎没有一个真正满足我的需要。

\indent我尝试通过插入空格来更改命令:

\renewcommand{\indent}{\hspace{15pt}}

但是,\indent没有在新段落的开头添加任何额外的空格。

谁能帮帮我吗?

答案1

首先通过添加来存储原始缩进

\newlength{\saveparindent}
\AtBeginDocument{\setlength}{\saveparindent}{\parindent}}

到你的序言中。然后添加

\newcommand{\indentpar}{\par\hspace*{\saveparindent}\ignorespaces}

作为您的新缩进机制。

假设您\setlength{\parindent}{0pt}的文档中还有其他内容,您现在应该能够按以下方式使用它:

在此处输入图片描述

\documentclass{article}

\newlength{\saveparindent}
\AtBeginDocument{\setlength{\saveparindent}{\parindent}}
\newcommand{\indentpar}{\par\hspace*{\saveparindent}\ignorespaces}

\begin{document}

This is an indented paragraph.

\setlength{\parindent}{0pt}% Remove paragraph indentation
This is a paragraph that is not indented.

\indentpar
Here is a new indented paragraph.

\end{document}

当然,\noindent如果你只对一些非缩进的段落感兴趣,LaTeX 还提供了:

\documentclass{article}

\begin{document}

This is an indented paragraph.

\noindent% Remove paragraph indentation just for this paragraph
This is a paragraph that is not indented.

Here is a new indented paragraph.

\end{document}

答案2

您应该始终能够\hspace为此目的使用:\hspace{5mm}

编辑:
为了\hspace工作,你可能必须使用 从垂直模式切换到水平模式\leavevmode。参见\leavevmode 的功能和使用什么是垂直模式和水平模式?

总的来说,这应该可行:\leavevmode\hspace{5mm}

相关内容