(一)LaTeX多种颜色标注高亮修改内容

发布时间 2023-10-10 21:17:02作者: jasonzhangxianrong

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