ActionScript 3 将图像从颜色更改为灰度

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ActionScript 3 将图像从颜色更改为灰度相关的知识,希望对你有一定的参考价值。

// GRAYSCALE AND IMAGE snippet

// "Bit" is the linkage ID of the bitmap in the Library
var colorMC : Sprite = new Bit();

// sendToGray takes 3 parameters width, height, and Sprite
addChild( sendToGray( 306, 176, colorMC ));

function sendToGray( w:int, h:int, drawItem:Sprite ) : Bitmap
{
	var myBitmapData : BitmapData = new BitmapData( w, h );
	myBitmapData.draw( drawItem );
	
	var bmp : Bitmap = new Bitmap( setGrayScale(myBitmapData) );
	
	return bmp;
}

function setGrayScale( obj:BitmapData ) : BitmapData
{
    var rLum : Number = 0.2225;
    var gLum : Number = 0.7169;
    var bLum : Number = 0.0606; 
    
    var matrix:Array = [ rLum, gLum, bLum, 0, 0,
                         rLum, gLum, bLum, 0, 0,
                         rLum, gLum, bLum, 0, 0,
                         0,    0,    0,    1, 0 ];
    
    var filter:ColorMatrixFilter = new ColorMatrixFilter( matrix );
    obj.applyFilter( obj, new Rectangle( 0,0,obj.width,obj.height ), new Point(0,0), filter );
    
    return obj;
}

以上是关于ActionScript 3 将图像从颜色更改为灰度的主要内容,如果未能解决你的问题,请参考以下文章

Opencv:将使用视频的代码更改为使用轨迹栏进行颜色检测的图像

如何在更多视图控制器的导航栏中设置图像并将更多标签的颜色从白色更改为绿色..?

如何将 SVG 的填充颜色更改为背景图像? [复制]

Python 中将 3 通道 rgb 彩色图像更改为 1 通道灰色的速度有多快?

基于像素的标签将2D像素阵列更改为图像

ActionScript 3 AS3获取图像的平均颜色