我想知道是否有任何方法可以确定解码为ByteArray的图像的宽度和高度。例如,在下面的示例中,有什么方法可以确定这些数据值?
var data:ByteArray = new ByteArray();
数据= encode_image.decode(byteArrayData);
最佳答案
您可以这样做:
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded)
loader.loadBytes(byteArrayData);
--
function onLoaded(e:Event):void
{
var loader:Loader = Loader(e.target.loader);
var bitmapData:BitmapData = Bitmap(e.target.content).bitmapData;
width = bitmapData.width;
height = bitmapData.height;
// cleanup
loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, onLoaded);
}
缺点是整个图像将被解码,因此,如果您实际上不需要图像,而仅需要宽度和高度,则可能实际上需要查看字节数组并解码文件格式。 (比较棘手,但是
关于actionscript-3 - 从ByteArray获取图像大小,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7895093/