LaTeX 定义颜色的几种方式 - TeX白兔

发布于 2021-03-26 15:52:05

颜色宏包 xcolor 是对早期颜色宏包 color 宏包的功能改进和扩充,现已完全取代了 color 颜色宏包。

颜色的定义

要使用某种配比的颜色,必须事先定义,在xcolor中,已经分别使用上述三种颜色模式定义了19种颜色及其名称,如下所示:
image.png
截图来源 texdoc xcolor

如果上述这些颜色没有所需要的颜色,那就要用 xcolor 提供的颜色定义命令:

\definecolor{颜色}{模式}{定义}

例如

\definecolor{lightgray}{gray}{0.90}     % 1.灰度
\definecolor{orange}{rgb}{0.9,0.9,0.9}  % 2.rgb
\definecolor{purple}{RGB}{102,0,255}    % 3.RGB
\definecolor{myblue}{HTML}{0F1423}      % 4.HTML
\definecolor{orange}{cmyk}{0,0.5,1,0}   % 5.cmyk

xcolor 中的模式有 12 种,分别是 rgb,cmy,cmyk,hsb,Hsb,tHsb,gray,RGB,HTML,HSB,Gray,wave。常用的也就三四种(gray 灰度模式,rgb 三基色模式,cmyk 四分色模式)

颜色的表达式

xcolor 提出了一种颜色表示方法:颜色表达式,其最典型的表示方法为

颜色!百分数1!颜色1!百分数2!颜色2!...百分数n!颜色n

在表达式中,颜色可以是在 xcolor 宏包中定义的颜色,也可以是使用definecolor自定义的颜色名称,!是分隔符,如果颜色表达式的最后一项不是颜色名称,其默认值就是 white。

如下面代码所示:

\documentclass{ctexart}
\usepackage{xcolor}

\newcommand{card}[1]{color{#1}rule{1cm}{0.5cm}}

\definecolor{lightgray}{gray}{0.90}     % 1.灰度
\definecolor{myblack}{rgb}{0.1,0.1,0.1} % 2.rgb
\definecolor{purple}{RGB}{102,0,255}    % 3.RGB
\definecolor{myblue}{HTML}{0F1423}      % 4.HTML
\definecolor{orange}{cmyk}{0,0.5,1,0}   % 5.cmyk
\begin{document}

\card{lightgray}
\card{myblack}
\card{purple}
\card{myblue}
\card{orange}

颜色表达式

\card{purple!75}
\card{purple!75!myblue}
\card{purple!75!black}
\end{document}

效果图如下所示:
image.png

0 条评论

发布
问题