1

ビットマップを共有オブジェクトに保存する必要があります....オンラインで読んだのですが、それを行うにはbytearrayに変換する必要があります..しかし、これを行う方法がわかりません...誰かに説明してもらえますかビットマップをバイト配列に変換する方法を少しずつ説明します..

これは私が取り組んでいるコードです

var btm:BitmapData;
var x_d:Array = new Array();

orange.addEventListener( MouseEvent.CLICK, firstc);
    function firstc (x:MouseEvent){

        btm = new BitmapData(200,200);
       x_d[0] = new Bitmap (btm);
        addChild(x_d[0]);
        btm.draw (orange);
            gotoAndStop(3);

    };
4

1 に答える 1

3

生データが必要な場合はgetPixels()メソッドを使用する必要がありますが、jpgまたはpngとして圧縮されたビットマップデータを保存する場合は次のようにします。

PNG

btm = new BitmapData(200,200);
...
var stream:ByteArray = PNGEncoder.encode( btm );

JPG

btm = new BitmapData(200,200);
...
var jpgEncoder:JPGEncoder = new JPGEncoder( 90 );
var stream:ByteArray = jpgEncoder.encode( btm );

PNGEncoderおよびJPGEncoderクラスの場合、as3corelibを使用します

Flash Player 11.3以降でユーザーをターゲットにする場合は、ネイティブエンコーダーを使用できます

于 2013-01-07T09:10:28.917 に答える