2

サイズを変更する必要のある大きなビットマップデータを使用して、同じコードがAIRで非常に遅く実行されることに気付いたテストを実行しています。

これはコードです:

import flash.display.BitmapData;
import flash.geom.Matrix;
import flash.display.Bitmap;
import flash.geom.Point;

var MAX_BITMAP_SIZE:Point = new Point( 596, 842 );

var bitmapdata:BitmapData = new MyBitmap();
var sc:Number = Math.min( MAX_BITMAP_SIZE.x / bitmapdata.width, MAX_BITMAP_SIZE.y /     bitmapdata.height );
var outBitmap:BitmapData = new BitmapData( bitmapdata.width >> 1, bitmapdata.height >> 1, false, 0x0 );
var bitmap:Bitmap = new Bitmap();
addChild( bitmap );
var scaleMatrix:Matrix = new Matrix();
scaleMatrix.scale(sc,sc);

var time:Number = new Date().getTime();
outBitmap.draw( bitmapdata, scaleMatrix, null,null,null,true );
trace( new Date().getTime()-time );
bitmap.bitmapData = outBitmap;

同じコードテスト:

フラッシュとして公開11.4->1msAIR3.4として公開->62ms

誰?

4

0 に答える 0