LaTeX 排版(1):列表
2023-04-18 14:45:50 时间
本系列基于前文《在 Fedora 上用 LaTex 和 TeXstudio 排版你的文档》和《LaTeX 基础》,本文即系列的第一部分,是关于 LaTeX 列表的。
列表类型
LaTeX 中的列表是封闭的环境,列表中的每个项目可以取一行文字到一个完整的段落。在 LaTeX 中有三种列表类型:
itemize
:无序列表/项目符号列表enumerate
:有序列表description
:描述列表
创建列表
要创建一个列表,需要在每个项目前加上控制序列 item
,并在项目清单前后分别加上控制序列 egin{<类型>}
和 end
{<类型>}(将其中的
<类型>` 替换为将要使用的列表类型),如下例:
itemize(无序列表)
egin{itemize}
item Fedora
item Fedora Spin
item Fedora Silverblue
end{itemize}
enumerate(有序列表)
egin{enumerate}
item Fedora CoreOS
item Fedora Silverblue
item Fedora Spin
end{enumerate}
description(描述列表)
egin{description}
item[Fedora 6] Code name Zod
item[Fedora 8] Code name Werewolf
end{description}
列表项目间距
可以通过在导言区加入 usepackage{enumitem}
来自定义默认的间距,宏包 enumitem
启用了选项 noitemsep
和控制序列 itemsep
,可以在列表中使用它们,如下例所示:
使用选项 noitemsep
将选项 noitemsep
封闭在方括号内,并同下文所示放在控制序列 egin
之后,该选项将移除默认的间距。
egin{itemize}[noitemsep]
item Fedora
item Fedora Spin
item Fedora Silverblue
end{itemize}
使用控制序列 itemsep
控制序列 itemsep
必须以一个数字作为后缀,用以表示列表项目之间应该有多少空间。
egin{itemize} itemsep0.75pt
item Fedora Silverblue
item Fedora CoreOS
end{itemize}
嵌套列表
LaTeX 最多最多支持四层嵌套列表,如下例:
嵌套无序列表
egin{itemize}[noitemsep]
item Fedora Versions
egin{itemize}
item Fedora 8
item Fedora 9
egin{itemize}
item Werewolf
item Sulphur
egin{itemize}
item 2007-05-31
item 2008-05-13
end{itemize}
end{itemize}
end{itemize}
item Fedora Spin
item Fedora Silverblue
end{itemize}
嵌套有序列表
egin{enumerate}[noitemsep]
item Fedora Versions
egin{enumerate}
item Fedora 8
item Fedora 9
egin{enumerate}
item Werewolf
item Sulphur
egin{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* (小写字母) |
$ullet$ (●) |
Alph* (大写字母) |
$cdot$ (•) |
arabic* (阿拉伯数字) |
$diamond$ (◇) |
oman* (小写罗马数字) |
$ast$ (✲) |
Roman* (大写罗马数字) |
$circ$ (○) |
$-$ (-) |
按嵌套深度划分的默认样式
嵌套深度 | enumerate(有序列表) | itemize(无序列表) |
---|---|---|
1 | 阿拉伯数字 | (●) |
2 | 小写字母 | (-) |
3 | 小写罗马数字 | (✲) |
4 | 大写字母 | (•) |
设置列表样式
下面的例子列举了无序列表的不同样式。
% 无序列表样式
egin{itemize}
item[$ast$] Asterisk
item[$diamond$] Diamond
item[$circ$] Circle
item[$cdot$] Period
item[$ullet$] Bullet (default)
item[--] Dash
item[$-$] Another dash
end{itemize}
有三种设置列表样式的方式,下面将按照优先级从高到低的顺序分别举例。
方式一:为各项目单独设置
将需要的样式名称封闭在方括号内,并放在控制序列 item
之后,如下例:
% 方式一
egin{itemize}
item[$ast$] Asterisk
item[$diamond$] Diamond
item[$circ$] Circle
item[$cdot$] period
item[$ullet$] Bullet (default)
item[--] Dash
item[$-$] Another dash
end{itemize}
方式二:为整个列表设置
将需要的样式名称以 label=
前缀并封闭在方括号内,放在控制序列 egin
之后,如下例:
% 方式二
egin{enumerate}[label=Alph*.]
item Fedora 32
item Fedora 31
item Fedora 30
end{enumerate}
方式三:为整个文档设置
该方式将改变整个文档的默认样式。使用
enewcommand
来设置项目标签的值,下例分别为四个嵌套深度的项目标签设置了不同的样式。
% 方式三
enewcommand{labelitemi}{$ast$}
enewcommand{labelitemii}{$diamond$}
enewcommand{labelitemiii}{$ullet$}
enewcommand{labelitemiv}{$-$}
总结
LaTeX 支持三种列表,而每种列表的风格和间距都是可以自定义的。在以后的文章中,我们将解释更多的 LaTeX 元素。
相关文章
- 【技术种草】cdn+轻量服务器+hugo=让博客“云原生”一下
- CLB运维&运营最佳实践 ---访问日志大洞察
- vnc方式登陆服务器
- 轻松学排序算法:眼睛直观感受几种常用排序算法
- 十二个经典的大数据项目
- 为什么使用 CDN 内容分发网络?
- 大数据——大数据默认端口号列表
- Weld 1.1.5.Final,JSR-299 的框架
- JavaFX 2012:彻底开源
- 提升as3程序性能的十大要点
- 通过凸面几何学进行独立于边际的在线多类学习
- 利用行动影响的规律性和部分已知的模型进行离线强化学习
- ModelLight:基于模型的交通信号控制的元强化学习
- 浅谈Visual Source Safe项目分支
- 基于先验知识的递归卡尔曼滤波的代理人联合状态和输入估计
- 结合网络结构和非线性恢复来提高声誉评估的性能
- 最佳实践丨云开发CloudBase多环境管理实践
- TimeVAE:用于生成多变量时间序列的变异自动编码器
- 具有线性阈值激活的神经网络:结构和算法
- 内网渗透之横向移动 -- 从域外向域内进行密码喷洒攻击