LaTeX 排版(1):列表
本系列基于前文《在 Fedora 上用 LaTex 和 TeXstudio 排版你的文檔》和《LaTeX 基礎(chǔ)》,本文即系列的第一部分,是關(guān)于 LaTeX 列表的。
列表類型
LaTeX 中的列表是封閉的環(huán)境,列表中的每個(gè)項(xiàng)目可以取一行文字到一個(gè)完整的段落。在 LaTeX 中有三種列表類型:
itemize
:無序列表/項(xiàng)目符號(hào)列表enumerate
:有序列表description
:描述列表
創(chuàng)建列表
要?jiǎng)?chuàng)建一個(gè)列表,需要在每個(gè)項(xiàng)目前加上控制序列 \item
,并在項(xiàng)目清單前后分別加上控制序列 \begin{<類型>}
和 \end
{<類型>}(將其中的
<類型>` 替換為將要使用的列表類型),如下例:
itemize(無序列表)
\begin{itemize}
\item Fedora
\item Fedora Spin
\item Fedora Silverblue
\end{itemize}
enumerate(有序列表)
\begin{enumerate}
\item Fedora CoreOS
\item Fedora Silverblue
\item Fedora Spin
\end{enumerate}
description(描述列表)
\begin{description}
\item[Fedora 6] Code name Zod
\item[Fedora 8] Code name Werewolf
\end{description}
列表項(xiàng)目間距
可以通過在導(dǎo)言區(qū)加入 \usepackage{enumitem}
來自定義默認(rèn)的間距,宏包 enumitem
啟用了選項(xiàng) noitemsep
和控制序列 \itemsep
,可以在列表中使用它們,如下例所示:
使用選項(xiàng) noitemsep
將選項(xiàng) noitemsep
封閉在方括號(hào)內(nèi),并同下文所示放在控制序列 \begin
之后,該選項(xiàng)將移除默認(rèn)的間距。
\begin{itemize}[noitemsep]
\item Fedora
\item Fedora Spin
\item Fedora Silverblue
\end{itemize}
使用控制序列 \itemsep
控制序列 \itemsep
必須以一個(gè)數(shù)字作為后綴,用以表示列表項(xiàng)目之間應(yīng)該有多少空間。
\begin{itemize} \itemsep0.75pt
\item Fedora Silverblue
\item Fedora CoreOS
\end{itemize}
嵌套列表
LaTeX 最多最多支持四層嵌套列表,如下例:
嵌套無序列表
\begin{itemize}[noitemsep]
\item Fedora Versions
\begin{itemize}
\item Fedora 8
\item Fedora 9
\begin{itemize}
\item Werewolf
\item Sulphur
\begin{itemize}
\item 2007-05-31
\item 2008-05-13
\end{itemize}
\end{itemize}
\end{itemize}
\item Fedora Spin
\item Fedora Silverblue
\end{itemize}
嵌套有序列表
\begin{enumerate}[noitemsep]
\item Fedora Versions
\begin{enumerate}
\item Fedora 8
\item Fedora 9
\begin{enumerate}
\item Werewolf
\item Sulphur
\begin{enumerate}
\item 2007-05-31
\item 2008-05-13
\end{enumerate}
\end{enumerate}
\end{enumerate}
\item Fedora Spin
\item Fedora Silverblue
\end{enumerate}
每種列表類型的列表樣式名稱
enumerate(有序列表) | itemize(無序列表) |
---|---|
\alph* (小寫字母) |
$\bullet$ (●) |
\Alph* (大寫字母) |
$\cdot$ (•) |
\arabic* (阿拉伯?dāng)?shù)字) |
$\diamond$ (◇) |
\roman* (小寫羅馬數(shù)字) |
$\ast$ (✲) |
\Roman* (大寫羅馬數(shù)字) |
$\circ$ (○) |
$-$ (-) |
按嵌套深度劃分的默認(rèn)樣式
嵌套深度 | enumerate(有序列表) | itemize(無序列表) |
---|---|---|
1 | 阿拉伯?dāng)?shù)字 | (●) |
2 | 小寫字母 | (-) |
3 | 小寫羅馬數(shù)字 | (✲) |
4 | 大寫字母 | (•) |
設(shè)置列表樣式
下面的例子列舉了無序列表的不同樣式。
% 無序列表樣式
\begin{itemize}
\item[$\ast$] Asterisk
\item[$\diamond$] Diamond
\item[$\circ$] Circle
\item[$\cdot$] Period
\item[$\bullet$] Bullet (default)
\item[--] Dash
\item[$-$] Another dash
\end{itemize}
有三種設(shè)置列表樣式的方式,下面將按照優(yōu)先級(jí)從高到低的順序分別舉例。
方式一:為各項(xiàng)目單獨(dú)設(shè)置
將需要的樣式名稱封閉在方括號(hào)內(nèi),并放在控制序列 \item
之后,如下例:
% 方式一
\begin{itemize}
\item[$\ast$] Asterisk
\item[$\diamond$] Diamond
\item[$\circ$] Circle
\item[$\cdot$] period
\item[$\bullet$] Bullet (default)
\item[--] Dash
\item[$-$] Another dash
\end{itemize}
方式二:為整個(gè)列表設(shè)置
將需要的樣式名稱以 label=
前綴并封閉在方括號(hào)內(nèi),放在控制序列 \begin
之后,如下例:
% 方式二
\begin{enumerate}[label=\Alph*.]
\item Fedora 32
\item Fedora 31
\item Fedora 30
\end{enumerate}
方式三:為整個(gè)文檔設(shè)置
該方式將改變整個(gè)文檔的默認(rèn)樣式。使用 \renewcommand
來設(shè)置項(xiàng)目標(biāo)簽的值,下例分別為四個(gè)嵌套深度的項(xiàng)目標(biāo)簽設(shè)置了不同的樣式。
% 方式三
\renewcommand{\labelitemi}{$\ast$}
\renewcommand{\labelitemii}{$\diamond$}
\renewcommand{\labelitemiii}{$\bullet$}
\renewcommand{\labelitemiv}{$-$}
總結(jié)
LaTeX 支持三種列表,而每種列表的風(fēng)格和間距都是可以自定義的。在以后的文章中,我們將解釋更多的 LaTeX 元素。