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 1} \lipsum[5] % 隨機生成一段文字 燕子去了,有再來的時候;楊柳枯了,有再青的時候;桃花謝了,有再開的時候。但是,聰明的,你告訴我,我們的日子為什么一去不復返呢?——是有人偷了他們罷:那是誰?又藏在何處呢?是他們自己逃走了罷:現在又到了哪里呢? \\ 我不知道他們給了我多少日子;但我的手確乎是漸漸空虛了。在默默里算着,八千多日子已經從我手中溜去;像針尖上一滴水滴在大海里,我的日子滴在時間的流里,沒有聲音,也沒有影子。我不禁頭涔涔而淚潸潸了。\\ \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 1} \lipsum[5] % 隨機生成一段文字 燕子去了,有再來的時候;楊柳枯了,有再青的時候;桃花謝了,有再開的時候。但是,聰明的,你告訴我,我們的日子為什么一去不復返呢?——是有人偷了他們罷:那是誰?又藏在何處呢?是他們自己逃走了罷:現在又到了哪里呢? \\ 我不知道他們給了我多少日子;但我的手確乎是漸漸空虛了。在默默里算着,八千多日子已經從我手中溜去;像針尖上一滴水滴在大海里,我的日子滴在時間的流里,沒有聲音,也沒有影子。我不禁頭涔涔而淚潸潸了。\\ \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 1} \indent \lipsum[5] % 隨機生成一段文字 \indent 燕子去了,有再來的時候;楊柳枯了,有再青的時候;桃花謝了,有再開的時候。但是,聰明的,你告訴我,我們的日子為什么一去不復返呢?——是有人偷了他們罷:那是誰?又藏在何處呢?是他們自己逃走了罷:現在又到了哪里呢? \\ \indent 我不知道他們給了我多少日子;但我的手確乎是漸漸空虛了。在默默里算着,八千多日子已經從我手中溜去;像針尖上一滴水滴在大海里,我的日子滴在時間的流里,沒有聲音,也沒有影子。我不禁頭涔涔而淚潸潸了。\\ \end{document}
其效果如下圖4。
至此,大功告成!
4. 總結
首行縮進功能實現需要宏包\usepackage{indentfirst}及配置\setlength{\parindent}{2em}。
還需要命令\noindent(不縮進)和\indent(縮進)。
5. 參考
6. 更多請看
更多本人整理的有關於LaTex的知識還請參見LaTex知識個人匯總。