✅作者简介:人工智能专业本科在读,喜欢计算机与编程,写博客记录自己的学习历程。
🍎个人主页:小嗷犬的个人主页
🍊个人网站:小嗷犬的技术小站
🥭个人信条:为天地立心,为生民立命,为往圣继绝学,为万世开太平。
本文目录
- enumitem 宏包简介
- enumitem 宏包的使用
- 加载宏包
- 环境设置
- 有序列表 enumerate
- 自定义列表
enumitem 宏包简介
enumitem
宏包 是 LaTeX 中一个非常实用的工具,它提供了一种简单且灵活的方式来定制列表环境(包括无序列表 itemize
、有序列表 enumerate
以及描述列表 description
)的格式和样式。通过使用 enumitem
宏包,用户可以轻松地控制列表项之间的垂直间距、水平缩进、标签样式(包括编号或符号)、悬挂缩进等参数,并能够在文档的不同部分应用不同的列表设置。
以下是一些 enumitem
宏包的主要功能:
-
自定义间距:
\setlist
命令允许全局或局部设定各类列表环境的间距参数,如:\topsep
:列表与上下文正文之间的垂直间距。\itemsep
:列表中相邻项目之间的垂直间距。\parsep
:同一项目内段落间的垂直间距。\partopsep
:在列表顶部或底部有空白行时额外增加的垂直间距。\leftmargin
和\rightmargin
:列表整体的左右边距。\labelwidth
和\labelindent
:标签区域的宽度和缩进。
-
自定义标签:
- 可以改变默认的编号样式,例如将
enumerate
的数字标签替换为罗马数字、字母或其他自定义格式。 - 设置标签对齐方式,如左对齐、右对齐或居中对齐。
- 使用
\newlist
和\setlist
创建并配置新的列表环境,具有特定的样式。
- 可以改变默认的编号样式,例如将
-
嵌套列表:
- 支持多级嵌套列表,并可以分别调整每一级列表的样式和间距。
-
交叉引用:
- 提供了列表项目的自动编号功能,并支持交叉引用列表项。
-
其他选项:
- 控制列表前后的换页行为,防止页面断开或者强制列表在同一页面上完成。
- 添加前缀或后缀到每个列表项的标签前或后面。
enumitem
宏包极大地增强了 LaTeX 用户对列表环境的控制能力,使其能够根据文档排版需求来精确调整列表格式。
enumitem 宏包的使用
加载宏包
在 LaTeX 文档的导言区加载 enumitem
宏包:
\usepackage{enumitem}
环境设置
enumitem
宏包提供了 \setlist
命令来设置列表环境的参数,其语法格式如下:
\setlist[<list type>]{<format>}
其中 <list type>
为列表类型,可以是 itemize
、enumerate
或 description
,也可以是用户自定义的列表环境名称;<format>
为列表格式,可以是一个或多个列表参数,多个参数之间用逗号分隔。
例如,下面的代码将全局设置 itemize
环境的垂直间距为 0pt
,并将标签缩进设置为 1em
:
\setlist[itemize]{noitemsep, leftmargin=1em}
有序列表 enumerate
下面是一个简单的 enumerate
环境的例子:
\begin{enumerate}[label=\alph*)] % 将列表标签设为小写字母
\item 第一项内容
\item 第二项内容
\end{enumerate}
编译后的效果如下:
自定义列表
下面是一个自定义列表环境的例子:
% 创建并使用新的列表环境
\newlist{mylist}{enumerate}{2}
\setlist[mylist, 1]{label*=\arabic*.}
\setlist[mylist, 2]{label=(\roman*)}
\begin{mylist}
\item 主要条目
\begin{mylist}[resume]
\item 子条目1
\item 子条目2
\end{mylist}
\item 另一个主要条目
\end{mylist}
编译后的效果如下: