0

我在 Flash CS6 中使用 ActionScript 3 和 Adob​​e AIR 3.4

我正在尝试将文件系统中的图像加载到位图中。

我目前的代码是:

var loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete);
loader.load(new URLRequest("assets\\" + filename));

private function loadComplete(e:Event):void
{
    //add to bitmap
    bitmap = new Bitmap();
    bitmap.bitmapData = new BitmapData(loader.width, loader.height, true, 0x000000);

    bitmap.bitmapData.draw(loader);
}

但是,bitmapData.draw 的性能非常低效(图像为 2048x1536)。我努力了:

bitmap.bitmapData = e.target.content.bitmapData;

不过不影响性能。而且还是很慢。

如何将加载器中的图像加载到位图中而不会出现如此缓慢的性能。

4

1 回答 1

3

当您使用 加载图像时Loader,您已经获得了Bitmap. 那你为什么要draw()进入另一个?

只需这样做:

private function loadComplete(event:Event):void
{
    bitmap = loader.contentLoaderInfo.content as Bitmap;
}
于 2013-11-03T13:02:42.347 回答