ImageInfoExtractor类通过ByteArray方式获取jpg,png,gif等图片的相关信息:例如图片大小,图片宽和高,图片格式等。当然,这一切都是未加载图片之前,也就是说如果一张相当大的图片,你不必完全加载后才得到这些信息,用ImageInfoExtractor类可以马上就能读取到它了。
使用方法很简单:
var myExtractor:ImageInfoExtractor = new ImageInfoExtractor();
myExtractor.addEventListener(ImageInfoExtractor.PARSE_COMPLETE, infoHandler);
myExtractor.addEventListener(ImageInfoExtractor.PARSE_FAILED, errorHandler);
myExtractor.file = "http://www2.pc1280.com/images3/wall/20051104/1280_3d_1015.jpg";
var t1:Number=getTimer();
var infoTxt:TextField=new TextField();
infoTxt.width=200;
infoTxt.height=200;
addChild(infoTxt);
function infoHandler(e:Event):void {
trace(getTimer()-t1);
var line0:String = "image size = " + myExtractor.size;
var line1:String = "pixel width = " + myExtractor.width;
var line2:String = "pixel height = " + myExtractor.height;
var line3:String = "bit depth = " + myExtractor.bitsPerPixel;
var line4:String = "file type = " + myExtractor.fileType;
var line5:String = "mime type = " + myExtractor.mimeType;
infoTxt.htmlText = line0 +"\n"+ line1 +"\n"+ line2 +"\n"+ line3 +"\n"+ line4 +"\n"+ line5;
}
function errorHandler(e:Event):void {
trace( "Size could not be obtained, file was not according to JFIF specification" );
}有兴趣的朋友可以进行研究,下面是ImageInfoExtractor类和示例文件。
点击下载此文件
作者写该类写得挺辛苦的,类出处以及作者原文请看这里:http://www.emstris.com/2009/05/extracting-binary-info/
Copyright 2007-2008 51AS.com Extended in kingcms 鲁ICP备06001158号