【转】ColorMatrixFilter色彩矩阵滤镜

转自 蜗牛的博客

matrix是一个长度为4*5=20的数组,其构成如下所示:

 R  ,G,  B,  A, offset
[1,  0,  0,  0,  0]); // red
[0,  1,  0,  0,  0]); // green
[0,  0,  1,  0,  0]); // blue
[0,  0,  0,  1,  0]); // alpha

上面是matrix的初始状态。

下面我分先来分析一下其初始状态。

red通道的值:(1,0,0,0,0)表示,R通道的乘数是1(完全保留),别的道道的的乘数是0,(不加入别的通道的颜色),色彩偏移量off是0;

别的通道依次类推。

下面来做一些效果,增加对colorMatrixFilter的认识: 继续阅读【转】ColorMatrixFilter色彩矩阵滤镜

话说ColorMatrixFilter(2)

话说ColorMatrixFilter一文中,我粗浅的研究了ColorMatrixFilter的使用,并说到它另我失望的话。

事实证明,这个ColorMaxtrixFilter确实就是我要找的,可是它让我失望。

而看了Using Matrices for Transformations, Color Adjustments, and Convolution Effects in Flash一文后,我这种失望情绪一扫而光,文中详细介绍了Maxtrix类的用法,并提供了一个将亮度、饱和度、对比度和色调值转为响应矩阵的Demo程序,值得好好研究。


Get Adobe Flash player

话说ColorMatrixFilter


很欣慰的在 Flash 8 的ActionScript2.0语言参考中找到 GradientGlowFilter(渐变发光滤镜)和GradientBevelFilter(渐变斜角滤镜)时,我想我应该离镜效果中的“调整颜色”滤镜所代表的Class不远了。可是,我并没有找到我预想中的那个 “AdjustColorFilter” (或者类似的名字)Class,却发现了一个 “ColorMatrixFilter”

事实证明,这个ColorMaxtrixFilter确实就是我要找的,可是它让我失望。

在“调整颜色滤镜”中,将影片剪辑的颜色按照“亮度、对比度、饱和度和色相”进行调整,这个功能大大增强了Flash的处理能力。在Flash8 以前,我只能使用影片剪辑实例的“高级”颜色属性对影片剪辑进行变色处理。但是这样的处理有个最大的弊端--不能保证被调整对象的饱和度、对比度或者亮度不发生改变。这样的功能让人无法满意,不得以只能借助图像处理软件。而现在的“调整颜色滤镜”,终于可以让Photoshop歇歇了。

可惜的是,ColorMaxtrixFilter 却没有使用“调整颜色滤镜”的这种使用“亮度、对比度、饱和度、色相”来标明数值的方式,而是要使用矩阵!

继续阅读话说ColorMatrixFilter