在计算机中表示颜色的模式有好几种,在HTML网页设计中使用的是RGB模式。红光、绿光、蓝光是色光加光混合的三基色, 通过红光、绿光、蓝光不同比例的组合,能产生任何颜色的光。 计算机的显示器显示画面是靠显示器屏幕的微小的发光点发出不同比例的红光、绿光、蓝光三种颜色的光而显出千变万化的画面。 RGB色彩模式就是用R表示红光的分量,用G表示绿光的分量,用B表示蓝光的分量,RGB数据就可以表示出任何一种颜色, 任何一种颜色也可以用一个RGB数据表示出来。在文字格式一文中曾说过color属性的取值有用英文关键字、16进制颜色代码、rgb函数三种类型。现在我们就来学习16进制颜色代码的组成和表示不同色彩的方法。看下面这个红色数据的代码:
#ff0000
#FF0000就是红色的代码下面来看一下对这个代码的分析:
#FF0000可分为四个部分#、FF、00、00。#开头表示这个颜色是16进制颜色代码,后三部分分别表示红光分量、绿光分量、蓝光分量,我们可以这样理解#FF0000这个颜色代码:红光分量是16进制的FF(16进制的FF等于十进制的255);绿光分量是16进制的0;蓝光分量是16进制的0的一个颜色。16进制的个位数正数由小到大分别是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F 。 现在再来分析#FF0000这个颜色代码, 16进制颜色代码每一基色只用两位数来表示,所以每一基色分量的最大值FF,最小值是0, #FF0000 里红光分量已达最大,绿光 和绿光都是0,所以它是单纯的红色 。 红色的代码是这样那其它颜色的代码又是怎样的呢,前面已经说过了: “红光、绿光、蓝光是色光加光混合的三基色, 通过红光、绿光、蓝光不同比例的组合,能产生任何颜色的光。” 红光、绿光、蓝光不同比例的组合, 真的能产生任何颜色的光吗?什么光和什么光混合能产生什么光呢?请看下面的色光混合示意图表:
| | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | |
上表中第一行是红光和绿光的混合效果,左边的格子里的颜色的红光成为多,右边的格子里绿光的成分少,第八第九个格子里红光和绿光的成分一样多 。 从第八和第九个格子可以看出红光+绿光=黄光。 当红光和绿光的万分一样多时混合出的黄光是既不偏绿也不偏红的。 当红光比红绿光多时混合出的黄光就会偏红,当绿光比红光多时混合出的黄光就会偏绿。 上表中第二行是绿光和蓝光混合效果,第三行是蓝光和红光混合效果请自行分析体会。 上面的图表是两种色光的混合效果,那么三种色光混合又会是怎样的呢?请看下面的三色光混合示意图:
| | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | |
上图表可以是这样认为红光从左边向右边照射,绿光从右边向左边照射,蓝光从下方向上方照射。三光混合中如果两种色光和光量较多,则混合出的颜色接近光量较多的两种色光混合出的颜色,在上图中第一二行蓝光较少,红光和绿光较多,则第一二行是红光和绿光的混合效果。第三行以下蓝光逐渐增加,在左边绿光较少,左边的一二列是红光和绿光的混合效果,在右边红光较少,右边的一二列中是绿光和蓝光的混合效果。在最后一行的第八第九个格子里红光绿光蓝光三种色光的份量一样,则三原色光混合成了白色。
注: 在Photoshop中有个选项叫 只有Web颜色,Web颜色也是使用RGB三个分量来表示的,但是颜色空间相对小一些,原因在于:
Web Safe Colors
Some years ago, when computers supported max 256 different colors, a list of 216 "Web Safe Colors" was suggested as a Web standard, reserving 40 fixed system colors.
The 216 cross-browser color palette was created to ensure that all computers would display the colors correctly when running a 256 color palette.
This is not important now, since most computers can display millions of different colors.