您的位置:首页 > 其它

Flex 利用bitmap和bitmapData改变图片为黑白画

2012-04-10 10:57 417 查看
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"  creationComplete="application1_creationCompleteHandler(event)"
xmlns:mx="library://ns.adobe.com/flex/mx"  width="800" height="600">
<fx:Script>
<![CDATA[
import mx.events.FlexEvent;

import org.osmf.utils.URL;
private var loader:Loader;
private var loaderUrl:String = "Library/33.png";

protected function application1_creationCompleteHandler(event:FlexEvent):void
{
loader = new Loader();//加载图片
loader.load(new URLRequest(loaderUrl));
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,onComplete);
}
private function onComplete(event:Event):void
{
var width:Number = loader.content.width;
var height:Number = loader.content.height;
Can.addChild(new Bitmap(Bitmap(loader.content).bitmapData));
var bmpData:BitmapData = new BitmapData(width,height,false,0xffffff);
bmpData.draw(loader);
for(var i:int = 0 ;i <width; i++)
{
for(var j:int = 0; j<height; j++)
{
var color:uint = bmpData.getPixel(i,j); //取该位置像素的RGB值
if(color>0x605555) //判断颜色进行处理
{
bmpData.setPixel(i,j,0xffffff);//设置该像素为白色
}
else
{
bmpData.setPixel(i,j,0x00000);//设置该像素为黑色
}
}
}
var bitmap:Bitmap = new Bitmap(bmpData);
bitmap.x = width;
Can.addChild(bitmap);
}

]]>
</fx:Script>
<mx:UIComponent id="Can" width="100%" height="100%">
</mx:UIComponent>
</s:Application>


效果图:




                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐