WEB开发网
开发学院图形图像Flash 第四章 渲染技术Ⅰ[FL 基理译] 阅读

第四章 渲染技术Ⅰ[FL 基理译]

 2009-05-30 12:08:36 来源:WEB开发网   
核心提示: 对于24位来说,就等于 0xFFFFFF,第四章 渲染技术Ⅰ[FL 基理译](2),此外,这 6 个十六进制数可以分为三部分,并且使用的是 32 位色彩,如果大家对某个函数使用哪种色彩体系有疑问的话,第一部分代表红色,第二部分代表绿色

对于24位来说,就等于 0xFFFFFF,此外,这 6 个十六进制数可以分为三部分。第一部分代表红色,第二部分代表绿色,最后两位表示蓝色,被象征性地记为 0xRRGGBB。

记住每一个合成色都可以为 0 至 255(十六进制表示:0x00 到 0xFF)中的值。因此,红色可以表示为 0xFF0000,表示纯红色,因为它的绿色为 0,蓝色为 0。同样,0x0000FF 表示纯蓝色。

拿 11,273,634 为例,将它转换为十六进制(稍后为大家介绍一种简单的方法),结果为 0xAC05A2,可以把它分解为 red(红色) = AC,green(绿色) = 05,blue(蓝色) = A2。可以看出 red(红色)和 blue(蓝色)的值比较高,而绿色几乎没有,我们就可以猜到这个颜色大概为紫色,这是在十进制数中看不出来的。请注意,在 ActionScript 中,使用哪种进制表示都可以,在一个函数中使用颜色值既可使用十进制又可使用十六进制。对于 Flash 来说,11,273,634 和 0xAC05A2 是一个数,只是对于可怜的人类来说后面一种表示法更易读懂。

那么如何在两种进制之间进行转换呢,将十六进制转换为十进制非常容易。只要输出这个十六进制数就可以了,trace 函数会自动将它转换为十进制。

trace(0xAC05A2);

将十进制转换为十六进制要用到 toString(16)函数,如:

trace((11273634).toString(16));

输出结果为ac05a2,如果要使用这个数,不要忘记加上0x。

透明度和32位色

前面提到过,除了 24 位色以外,还有 32 位色,多出 8 位用于表示透明度。就像角度制与弧度制一样(第三章内容),AS 3 在 24 和 32 位色的使用上有些混杂。AS 3 的绘图 API 很大程度上是基于 Flash MX(Flash 6) 建立的,总之,绘图 API 函数使用一个特殊的参数来指定透明度,所以还要延用 24 位色。另外, BitmapData 类,是从 Flash  8 才加入的,并且使用的是 32 位色彩。如果大家对某个函数使用哪种色彩体系有疑问的话,请查看 ActionScript 参考手册。

上一页  1 2 3 4 5 6 7  下一页

Tags:第四章 渲染 技术

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接