ビットマップデータの圧縮

Flash Player 11.3 以降、AIR 3.3 以降

flash.display.BitmapData.encode() メソッドを使用すると、ビットマップデータを次のいずれかのイメージ圧縮形式にネイティブに圧縮できます。

  • PNG - PNG 圧縮を使用します。必要に応じて、ファイルサイズよりも圧縮速度を重視した高速圧縮を使用します。PNG 圧縮を使用するには、新しい flash.display.PNGEncoderOptions オブジェクトを BitmapData.encode() メソッドの 2 番目のパラメーターとして渡します。

  • JPEG - JPEG 圧縮を使用します。必要に応じて、イメージの画質を指定します。JPEG 圧縮を使用するには、新しい flash.display.JPEGEncoderOptions オブジェクトを BitmapData.encode() メソッドの 2 番目のパラメーターとして渡します。

  • JPEGXR - JPEG Extended Range(XR)圧縮を使用します。必要に応じて、カラーチャンネル、非可逆およびエントロピーの設定を指定します。JPEGXR 圧縮を使用するには、新しい flash.display.JPEGXREncoderOptions オブジェクトを BitmapData.encode() メソッドの 2 番目のパラメーターとして渡します。

この機能は、サーバーのアップロードまたはダウンロードのワークフローの一部として、イメージ処理で使用できます。

次のサンプルスニペットでは、 JPEGEncoderOptions を使用して BitmapData オブジェクトを圧縮します。

// Compress a BitmapData object as a JPEG file. 
var bitmapData:BitmapData = new BitmapData(640,480,false,0x00FF00); 
var byteArray:ByteArray = new ByteArray(); 
bitmapData.encode(new Rectangle(0,0,640,480), new flash.display.JPEGEncoderOptions(), byteArray);