我想知道是否有任何方法可以确定解码为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/

10-13 08:47