6

com.adobe.images.PNGEncoderを使用してbitmapDataをbyteArrayにエンコードしています。ローダーを使用せずにbyteArrayをbitmapDataに戻す方法はありますか?ありがとう。

編集:ローダーを使用したくない理由は、非同期であり、イベントリスナーを実装したくないためです。

4

2 に答える 2

10

以下はローダークラスを使用していますが、同期的です。

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);
于 2012-07-18T13:08:45.167 に答える
2

bitmapdata の setpixels() メソッドを見てください。サイズを定義するための四角形と、コンテンツとしてのバイト配列が必要です。このメソッドは同期

于 2012-07-18T14:52:01.223 に答える