0. 简介

  在LaTex编辑时,有时会遇到这样一个有关于首行缩进的问题。在汉语环境的编辑下,习惯上每段会进行一个两个字的缩进。但是在默认编辑模式下,一个章节下的首段是没有首行缩进的,本文的目的主要是解决中文情况下首段缩进的情况。

1. 默认情况

  简介中说到了默认情况下每一个section或者subsection下的首段都没有缩进的,正常情况下的tex代码如下,其生成pdf效果见图1。

%----------------------------------------------------------------------------------------
%    文档整体设定
%----------------------------------------------------------------------------------------

% 设定文档类型
\documentclass[a4paper, 11pt, oneside]{report}

% 使用CTEX中文包
\usepackage{ctex}

% 统一修改正文和数学字体为Adobe Utopia
\usepackage{fourier}

% 产生随机文本
\usepackage{lipsum}

% 语言处理和自动断词
\usepackage[english]{babel}

% 开始文档
\begin{document}

\section{Section }
\lipsum[]    % 随机生成一段文字
燕子去了,有再来的时候;杨柳枯了,有再青的时候;桃花谢了,有再开的时候。但是,聪明的,你告诉我,我们的日子为什么一去不复返呢?——是有人偷了他们罢:那是谁?又藏在何处呢?是他们自己逃走了罢:现在又到了哪里呢?    \\
我不知道他们给了我多少日子;但我的手确乎是渐渐空虚了。在默默里算着,八千多日子已经从我手中溜去;像针尖上一滴水滴在大海里,我的日子滴在时间的流里,没有声音,也没有影子。我不禁头涔涔而泪潸潸了。\\

\end{document}

图1, 默认情况下的缩进情况

2. 添加缩进

  为了给段落添加缩进,我们在此使用到了indentfirst宏包,并用其配置缩进情况。其需要在导言区或者说是头部加上

% 添加首行缩进,两个字符
\usepackage{indentfirst}
\setlength{\parindent}{2em}

在加入代码引入宏包后,我们再来看一看效果。

图2, 添加了缩进代码后的效果

3. 跟进补充

  是否觉得上面之后就达到了我们所预想的效果?不不不,有时候就是这么的奇妙,我们来看下一段代码以及它所生成的结果,我们在文中使用了ctex宏包。

%----------------------------------------------------------------------------------------
%    文档整体设定
%----------------------------------------------------------------------------------------

% 设定文档类型
\documentclass[a4paper, 11pt, oneside]{report}

% 使用CTEX中文包
\usepackage{ctex}

% 统一修改正文和数学字体为Adobe Utopia
\usepackage{fourier}

% 产生随机文本
\usepackage{lipsum}

% 语言处理和自动断词
\usepackage[english]{babel}

% 添加首行缩进,两个字符
\usepackage{indentfirst}
\setlength{\parindent}{2em}

% 开始文档
\begin{document}

\section{Section }
\lipsum[]    % 随机生成一段文字
燕子去了,有再来的时候;杨柳枯了,有再青的时候;桃花谢了,有再开的时候。但是,聪明的,你告诉我,我们的日子为什么一去不复返呢?——是有人偷了他们罢:那是谁?又藏在何处呢?是他们自己逃走了罢:现在又到了哪里呢?    \\
我不知道他们给了我多少日子;但我的手确乎是渐渐空虚了。在默默里算着,八千多日子已经从我手中溜去;像针尖上一滴水滴在大海里,我的日子滴在时间的流里,没有声音,也没有影子。我不禁头涔涔而泪潸潸了。\\

\end{document}

  其效果图见下图3。

图3, 效果图

  从图3中我们可以看出,红圈标注出的地方仍然没有缩进,那么在这里我们就需要用到\noindent(不缩进)和\indent(缩进),如果使用了CJK宏包,还可以用\CJKindent命令。为了一致性以及方便理解,我们在每一段的首部都加上缩进标志后,其代码如下,效果如图4。

%----------------------------------------------------------------------------------------
%    文档整体设定
%----------------------------------------------------------------------------------------

% 设定文档类型
\documentclass[a4paper, 11pt, oneside]{report}

% 使用CTEX中文包
\usepackage{ctex}

% 统一修改正文和数学字体为Adobe Utopia
\usepackage{fourier}

% 产生随机文本
\usepackage{lipsum}

% 语言处理和自动断词
\usepackage[english]{babel}

% 添加首行缩进,两个字符
\usepackage{indentfirst}
\setlength{\parindent}{2em}

% 开始文档
\begin{document}

\section{Section }
\indent    \lipsum[]    % 随机生成一段文字
\indent    燕子去了,有再来的时候;杨柳枯了,有再青的时候;桃花谢了,有再开的时候。但是,聪明的,你告诉我,我们的日子为什么一去不复返呢?——是有人偷了他们罢:那是谁?又藏在何处呢?是他们自己逃走了罢:现在又到了哪里呢?    \\
\indent    我不知道他们给了我多少日子;但我的手确乎是渐渐空虚了。在默默里算着,八千多日子已经从我手中溜去;像针尖上一滴水滴在大海里,我的日子滴在时间的流里,没有声音,也没有影子。我不禁头涔涔而泪潸潸了。\\

\end{document}

  其效果如下图4。

  至此,大功告成!

4. 总结

  首行缩进功能实现需要宏包\usepackage{indentfirst}及配置\setlength{\parindent}{2em}

  还需要命令\noindent(不缩进)和\indent(缩进)。

5. 参考

[1] LaTeX技巧16:LaTeX首行缩进浅谈

6. 更多请看

  更多本人整理的有关于LaTex的知识还请参见LaTex知识个人汇总

[整理][LaTex]小技巧之——首行缩进的更多相关文章

  1. LaTex 小技巧

    首行缩进 参考:小技巧之--首行缩进 %-------------------------------------------------------------------------------- ...

  2. 微信小程序中使用text-indent实现首行缩进

    问题由来:在小程序中使用text标签包裹了一段话,要做一个首行缩进的效果,但是不起效果 . 解决方法:使用view标签代替text,使用text-indent:2em即可解决.

  3. HTML5 的段落首行缩进

    text-indent:0em;表示当前行不需要缩进,文本顶头开始.这个属性可以用在  div  p等元素下面 文本首行的缩进(在首行文字之前插入指定的长度) p { line-height: 2em ...

  4. div+CSS实现段落首行缩进两个字符

    段落前面空两个字的距离,不要再使用空格了,用CSS实现段落首缩进两个字符.应该使用首行缩进text-indent.text-indent可以使得容器内首行缩进一定单位.比如中文段落一般每段前空两个汉字 ...

  5. 关于css的text-indent首行缩进两个字符和图片缩进的问题

    段落前面空两个字的距离,不要再使用空格了.应该使用首行缩进text-indent. text-indent可以使得容器内首行缩进一定单位.比如中文段落一般每段前空两个汉字. <style typ ...

  6. Latex小技巧

    最近由于离散数学课程作业的需要, 使用$\LaTeX$写pdf报告, 积累了一些$\LaTeX$小技巧, 以后还会陆续补充. 1. 查看某个包的使用手册, 在命令行中输入texdoc XXX, 其中X ...

  7. css 文本单行显示溢出时出现省略号 多行显示溢出时出现省略号 首行缩进

    一.文本单行显示溢出时出现省略号 二.文本多行显示溢出时出现省略号(这种样式只能在webkit和移动端使用,包括小程序,不能设置固定高度) 三.首行缩进两字符 text-indent: 2em; 四. ...

  8. css —— 图片环绕+首行缩进

    1.利用css实现图片环绕文字的效果: 只需要给img标签设置float:left/right即可: 2.实现上段文字首行缩进两个字的效果: 使用 text-indent: 2em;即可(em为相对单 ...

  9. p便签,去掉首行缩进

    <p>fdsfdsfs</p> 使用P标签是,会自动的加上首行缩进,如果想去掉首行缩进,可以使用text-indent属性 <p style="text-ind ...

随机推荐

  1. 030. asp.net中DataList数据绑定跳转(两种方式)的完整示例

    前台代码: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.as ...

  2. JS获取当前日期时间及JS日期格式化

    Js获取当前日期时间: var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); //获取完整的年份( ...

  3. [Mongodb]3.2版本的一些基本操作--待续

    一.缘由 今天公司测试股票交易系统,需要拉取大量的数据存放,故考虑放在mongodb里. 二.一些基本操作 1.权限管理 mongo默认是不用账号就能登陆的,默认端口27017,但是这不太安全.我们要 ...

  4. [家里蹲大学数学杂志]第237期Euler公式的美

    1 Euler 公式 $e^{i\pi}+1=0$ (1) 它把 a.  $e:$ 自然对数的底 $\approx 2. 718281828459$ (数分) b.  $i$: 虚数单位 $=\sqr ...

  5. (整理)PowerDesign与EF的文档说明

    最近通过PowerDesign->SQLServer->VS的方式,将数据库设计.创建.实体模型生成等环节打通,发现VS中的Model竟然没有说明,然后就在园子里找了一下,发现了园友的文章 ...

  6. 54. Search a 2D Matrix && Climbing Stairs (Easy)

    Search a 2D Matrix Write an efficient algorithm that searches for a value in an m x n matrix. This m ...

  7. 学习了一下javascript的模块化编程

    现在在我脑海里关于“模块化”的概念是这些词:简单.具有逻辑之美.易用.健壮.可扩展.似乎这些形容与我现在水平写出的代码有点格格不入啊. 所以今天想了解和简单的实践一下“模块化开发”. 1.首先学习一下 ...

  8. 关于listview的一些属性

    由于这两天在做listView的东西,所以整理出来一些我个人认为比较特别的属性,通过设置这样的属性可以做出更加美观的列表 首先是stackFromBottom属性,这只该属性之后你做好的列表就会显示你 ...

  9. CSS3属性transition

    CSS3 Transitions 指定过渡 语法: transition: property duration timing-function delay;     参数一: transition-p ...

  10. U盘分区之后如何恢复

    操作步骤: 1.插入U盘. 2.按windows键,右键点击“运行”,再左键点击以管理员身份运行. 3.输入diskpart,按enter. 4.输入list disk,按enter. 5.之后会看到 ...