动作脚本3.0中存在哪些不同的方法? 我找到了这个图书馆:mojocolors 但这更像是图形颜色我想......
THX
答案 0 :(得分:1)
通常,假设您从RGB图像开始,将其转换为HSI颜色空间并使用I(强度)组件。
答案 1 :(得分:1)
要将图像转换为灰度,您需要迭代图像缓冲区中的每个像素,并将R,G和B分量平均为一个实体,然后将其复制三次以获得新颜色。伪代码(假设8位颜色):
for each pixel in buffer:
pixel.rgb = ((pixel.red + pixel.green + pixel.blue) / 3) * 0x010101;
我相信你可以用Adobe的PixelBender来做更快的事情。
答案 2 :(得分:1)
var n:Number = 1/3;
var matrix:Array = [n,n,n,0,0,
n,n,n,0,0,
n,n,n,0,0,
0,0,0,1,0];
var cmf:ColorMatrixFilter = new ColorMatrixFilter(matrix);
bitmap.filters = [cmf];
答案 3 :(得分:0)
将此方法创建的过滤器应用于包含您想要的黑白图像的DisplayObject:
public static function createBlackAndWhiteFilter():ColorMatrixFilter {
var rLum:Number = 0.2225;
var gLum:Number = 0.7169;
var bLum:Number = 0.0606;
var bwMatrix:Array = [rLum, gLum, bLum, 0, 0, rLum, gLum, bLum, 0, 0, rLum, gLum, bLum, 0, 0, 0, 0, 0, 1, 0];
return new ColorMatrixFilter(bwMatrix);
}//createBlackAndWhiteFilter