LaTeX 之字体颜色篇
速览
使用 xcolor 宏包可用来方便地调用颜色:
该宏包为我们提供了 \textcolor , \definecolor 两关键命令
1 | \textcolor{red}{Red为xcolor宏包预定义的命令} %修改颜色 |
宏包预定义的颜色命令
语法
1 | \textcolor{colorname}{text} %修改text的颜色 |
宏包预定义的颜色及命令如下

案例 1 宏包预定的颜色修改字体颜色
1 | \documentclass{ctexart} |

案例 2 设置颜色透明度
1 | \documentclass{ctexart} |

- 红色文字字体颜色 RGB (255,0,0)
- 透明度为 50% 的红色字体颜色 RGB (255,128,128)
案例 3 混合色
1 | \documentclass{ctexart} |

- red!50!black:即 50% 的红色(255,0,0)混合 50% 的黑色(0,0,0),最终得到(128,0,0)
- 同理,red!50!white 最终得到(255,128,128)
定义新的颜色命令
语法
1 | %语法:\definecolor{name}{model-list}{spec-list} |
语法中的 model-list 可以是我们常使用的 RGB、CMYK、HSV 等(整合了 12 种色彩模式 rgb, cmy, cmyk, hsb, Hsb, tHsb, gray, RGB, HTML, HSB, Gray, wave)。比如说 OFFICE 系列的软件在调节颜色时,通常会提供 RGB 和 HSV 两种颜色模式

案例 4:定义新的颜色命令
1 | \documentclass{ctexart} |

拓展应用 彩色表格
xcolor 宏包的 \rowcolors 命令 (需要 colortbl 宏包的支持),可以分别设置表格奇偶行的背景颜色
语法
1 | %语法:{起始行}{奇数行颜色}{偶数行颜色},如一下示例 |
\hiderowcolors 命令是用来暂停显示前面设置的奇偶行颜色,否则后面的其他表格会继续显示颜色。另一个命令 \showrowcolors 可以用来重新激活奇偶行颜色设置。
案例 5:彩色表格
1 | \documentclass{ctexart} |

需要注意的地方
\usepackage[table]{xcolor} 如果仅使用\usepackage{xcolor},无法识别\rowcolors、\hiderowcolors` 等命令\hiderowcolors写在 tabular 环境内,否则报Misplaced \noalign错
关于第 2 点的报错,可参考:
- CSDN:翻译 Misplaced noalign@Xovee ✅ 2023-08-10

主要参考资料
- 雷太赫排版系统简介(第二版):Github 仓库
- CSDN:翻译 Misplaced noalign
- 个人博客:LaTeX 黑魔法(一):tcolorbox 宏包简明教程