color
来源:互联网 发布:php 地方门户系统 编辑:程序博客网 时间:2024/05/05 11:36
Flash使用RGB颜色值,这三种混合色的每一种都是一个从0到255中的数,所以共有(256*256*256)个颜色值.
24位颜色 : 要使用8位(0或1)才能表示256个数值, 8乘以3(红绿蓝)意味着需要24位才能表示颜色值, 32位颜色多的8位数值表示透明度.
色彩合成: color24 = red << 16 | green << 8 | blue;
color32 = alpha << 24 | red << 16 | green << 8 | blue; (或运算: 两个数中有一个为1,结果就为1,若都为0则为0);
例颜色值0xFF55F3的组成:
红色范围的值为0xFF, 二进制为11111111,将它向左移动16位,结果:111111110000000000000000;
绿色范围的值为0x55,二进制为01010101,将它向左移动8位,结果: 000000000101010100000000;
蓝色范围的值为0xF3,二进制为11110011,不需要移动.
将这三组数用或运算运行后,得到111111110101010111110011,转换为16进制等于0xFF55F3.可以写成:
var color24:Number = oxFF << 16 | ox55 << 8 | 0xF3;
var color24:Number = 255 << 16 | 85 << 8 | 243;(32位的例子道理相同)
获取颜色值: red = color24 >> 16; green = color24 >> 8 & 0xFF; blue = color24 & 0xFF; ">>"是右移运算符,如果移动的过多数字就会消失.
例颜色值0xFF55F3.
red : 右移16位,结果 : 11111111,即0xFF(255);
green : 右移8位,结果 : 1111111101010101;这时得出了blue的值,但red值还在一边,使用&操作符(两个都是1则为1,其中一个为0则为0)
将其与0xFF进行运算 : 1111111101010101 & 0000000011111111,因为red位的数字都与0相比较,所以都为0,所以结果为 0000000001010101;
blue : 不需要执行右移操作,只需要与0xFF执行&操作即可.
32位与此类似,需要改动的是 alpha = color32 >> 24; red = color32 >> 16 & 0xFF; 其他不变.
- color #
- color
- color
- Color
- color
- color
- color
- Color
- Color
- color
- COLOR
- Color
- color
- color
- Color
- color
- color
- Color
- oralce分析
- 缓存淘汰算法系列之3——FIFO类
- 短信读取
- css中padding、margin两个重要属性的详细介绍及举例说明
- IOS TextField 根据输入,分割整数与小数部分
- color
- css:after 伪元素
- 35的后台短信
- MTK短消息编程
- MTK – 6253平台10A短信代码笔记
- struts2 表单数据无法获取即显示为null
- 短信数据结构
- 为PHP添加MEMCACHE模块
- Mac10.7代码编写退出键盘的操作