您的位置:首页 > 大数据 > 人工智能

Flex AIR 读取本地图片并得到读取图片的Bitmap对象

2011-11-29 15:43 489 查看
private var loader:Loader = new Loader();

private var bit:Bitmap = new Bitmap();
private function init():void{

this.rawChildren.addChild(bit);

//读取本地图像文件

var file:File = new File();

var imageTypes:FileFilter = new FileFilter("Images (*.jpg, *.jpeg, *.gif, *.png)", "*.jpg; *.jpeg; *.gif; *.png");

file.addEventListener( Event.SELECT, this.onSelect );

file.browseForOpen( "Open", [ imageTypes ] );

}

private function onSelect( e:Event ):void

{

//e.target.name 文件名称

//e.target.nativePath 文件路径

//获得读取图像文件的二进制数据

var fileByte:ByteArray = new ByteArray();

var fs:FileStream = new FileStream();

fs.open(File(e.target),FileMode.READ);

fs.readBytes( fileByte, 0, fs.bytesAvailable );

fs.close();

//使用Loader 对象将图像文件二进制数据加载进来(可加载SWF、GIF、JPEG 或 PNG 格式的文件)

//使用Loader 是方便通过loader.contentLoaderInfo获得Bitmap对象

this.loader.unload();

this.loader.loadBytes( fileByte );

loader.contentLoaderInfo.addEventListener(Event.COMPLETE, image_completeHandler);

}

private function image_completeHandler(event:Event):void{

bit.bitmapData = Bitmap(event.currentTarget.content).bitmapData;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: