我正在使用 com.adobe.images.PNGEncoder 将 bitmapData 编码为 byteArray。有没有办法不使用加载器将 byteArray 转换回 bitmapData?谢谢。
编辑:我不想使用加载器的原因是它是异步的,我不想实现事件监听器。
我正在使用 com.adobe.images.PNGEncoder 将 bitmapData 编码为 byteArray。有没有办法不使用加载器将 byteArray 转换回 bitmapData?谢谢。
编辑:我不想使用加载器的原因是它是异步的,我不想实现事件监听器。
以下是使用加载器类但是同步的。
var loader:Loader = new Loader();
loader.loadBytes(byteArray);
bmpData.draw(loader);
编辑:没关系 loadBytes 也是异步的,文档说您需要等待 init 事件。不想要事件监听器的原因是什么?它们是 AS3 中非常常见的做法。
所以你需要这样的东西:
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.INIT, function(e:Event):void {
bmpData.draw(loader);
});
loader.loadBytes(byteArray);
看一下 bitmapdata 的 setpixels() 方法。它需要一个矩形来定义大小和一个字节数组作为内容。此方法同步