1. 问题
近日,需要在 LaTeX 文档中用多种颜色进行高亮标注。以往一般是生成 PDF 后手动标注,但实在是太低效,而且重新生成 PDF 以后还要重新标注。一番搜索后决定使用 soul 包来解决
2. 解决方法
soul 的主要功能有四:
字间空格 \so
下划线 \ul
删除线 \st
高亮 \hl
本文主要介绍 高亮 的用法
3. 基本操作
话不多说,上代码
导包部分
\usepackage{soul} % 导入 soul 包 \usepackage{color, xcolor} % 颜色包,color 必须导入,xcolor 建议导入 % 若高亮 \hl 的结果变成下划线,一般是因为没导入 color
正文部分
导入包以后,可以通过 \hl{要高亮的文字} 进行高亮标注,使用 \sethlcolor{颜色} 可以设置高亮颜色(注意,是从 set 开始,一直到下一个 set 之前都是同一种颜色) 建议在每个 \hl 前都加上 \sethlcolor,确保颜色设置正确 现在,可以愉快地进行高亮标注啦
举个栗子:
\sethlcolor{yellow}\hl{这里的内容会被高亮为黄色\cite{xxx}} \sethlcolor{pink}\hl{这里的内容会被高亮为粉色} \hl{这里的内容会被高亮为粉色} % 没有设置颜色的话,沿用上一次的设置 \sethlcolor{yellow}\hl{这里的内容会被高亮为黄色}
4. 可能存在的问题及解决方法(重要!!!)
当高亮中存在 \ref{} \cite{} 等引用的情况下会报错,需要在文档头部加入 \soulregister{命令}{参数个数} 语句,使这些命令被 soul 识别
\soulregister{\cite}7 % 注册\cite命令 \soulregister{\citep}7 % 注册\citep命令 \soulregister{\citet}7 % 注册\citet命令 \soulregister{\ref}7 % 注册\ref命令 \soulregister{\pageref}7 % 注册\pageref命令
不过我也不知道为啥参数个数是 7(欢迎在评论区补充)
如果在章节标题等位置插入高亮,直接用 \hl 一般会报错,因此使用
\sethlcolor{yellow} \section{\texorpdfstring{\hl{xxx}}{xxx}}
版权声明:本文为CSDN博主「强行中文名」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_44926567/article/details/108440519