当前位置: 首页 > 图文教程 > Flash动画 > ActionScript > ColorTransform类调整显示对象的颜色值

ActionScript
FLASH AS3与网页JS参数值传递的问题
Flash AS3的parameters对象处理网页参数
Flash教程 认识Flash ActionScript的环境
Flash ActionScript编程基础
Flash AS3代码实现鼠标跟随喷枪涂鸦效果
falsh 跨域调用配置
Flash AS3.0 实例教程 喷泉动画特效
AS3 Loader与URLLoader的比较
ColorTransform类调整显示对象的颜色值
Flash AS3 快速制作烟雾动画
Flash AS3 制作文字飞出动画
ActionScript 学习小心得
ActionScript3.0读取网页FlashVars中的参数的问题
通过实例学习AS3.0:案例三
通过实例学习Flash AS3.0:案例四
通过实例学习Flash AS3.0:案例五
通过实例学习Flash AS3.0:案例六
Flash教程:认识Flash ActionScript的环境
Flash as入门(1):认识AS面板
Flash as入门(3):AS基本语法

ActionScript 中的 ColorTransform类调整显示对象的颜色值


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-16   浏览: 80 ::
收藏到网摘: n/a

ColorTransform

首先,我们要知道,一个颜色由四个通道组成:红、绿、蓝和alpha通道(这个alpha通道在PS里我不知道对应哪个),他们的十六进制颜色值分别为:

红:0xffff0000       绿:0xff00ff00       蓝:0xff0000ff (第一个0xff表示透明度100%)

在一张RGB模式的图片里,一个像素的颜色值是这个三个通道的减色模式叠加而成,比如上面这三个纯色叠加起来是白色,具体可以参考下面的附件...

/upload/tech/20090916/20090916063353_ba3866600c3540f67c1e9575e213be0a.jpg 

通道示范swf:


然后我们再看一下官方的解释,就比较好理解了...

可使用ColorTransform 类调整显示对象的颜色值。可以将颜色调整或颜色转换应用于所有四种通道:红色、绿色、蓝色和 Alpha 透明度。 当ColorTransform 对象应用于显示对象时,将按如下方法为每个颜色通道计算新值:

       
  • 新红色值 = (旧红色值 * redMultiplier) + redOffset
  •    
  • 新绿色值 = (旧绿色值 * greenMultiplier) + greenOffset
  •    
  • 新蓝色值 = (旧蓝色值 * blueMultiplier) + blueOffset
  •    
  • 新 Alpha 值 = (旧 Alpha 值 * alphaMultiplier) + alphaOffset
如果计算后任何一个颜色通道值大于255,则该值将被设置为255。如果该值小于0,它将被设置为0。
ColorTransform () 构造函数
public function ColorTransform(
    redMultiplier:Number = 1.0,
    greenMultiplier:Number = 1.0,
    blueMultiplier:Number = 1.0,
    alphaMultiplier:Number = 1.0,
    redOffset:Number = 0,
    greenOffset:Number = 0,
    blueOffset:Number = 0,
    alphaOffset:Number = 0)

用指定的颜色通道值和 Alpha 值为显示对象创建 ColorTransform 对象。
参数
  redMultiplier:Number (default = 1.0) — 红色乘数的值,在 0 到 1 范围内。   
greenMultiplier:Number (default = 1.0) — 绿色乘数的值,在 0 到 1 范围内。   
blueMultiplier:Number (default = 1.0) — 蓝色乘数的值,在 0 到 1 范围内。   
alphaMultiplier:Number (default = 1.0) — Alpha 透明度乘数的值,在 0 到 1 范围内。   
redOffset:Number (default = 0) — 红色通道值的偏移量,在 -255 到 255 范围内。   
greenOffset:Number (default = 0) — 绿色通道值的偏移量,在 -255 到 255 范围内。   
blueOffset:Number (default = 0) — 蓝色通道值的偏移量,在 -255 到 255 范围内。   
alphaOffset:Number (default = 0) — Alpha 透明度通道值的偏移量,在 -255 到 255 范围内。

下面是一个Demo调调看就知道怎么用了:

ColorTransform Demo.jpg