AS3に非常に大きな画像をロードする必要があります(現在のサイズは8192x8192)。画面への描画またはそのサイズのBitmapDataの作成に関して、Flashによって課せられた制限のいずれにも適合しないことを認識しています。画像をロードして、その一部をあちこちでcopyPixels()できるようにします。
問題は、そのサイズの.jpgファイルを問題なくロードしているということです。サイズはローダーオブジェクトから正しく認識されます。私はそれをこのようにロードします:
mImageLoader = new Loader();
var anImageURLRequest:URLRequest = new URLRequest("8192x8192.jpg");
mImageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
mImageLoader.load(anImageURLRequest);
次に、onCompleteメソッドで、これを実行しようとします。
Bitmap(mImageLoader.content).bitmapData.getPixel(1000, 1000);
しかし、通常は大きすぎるBitmapDataに対して予約されている#2015「InvalidBitmapData」エラーが表示されます。このエラーは、copyPixels()を実行しようとした場合にも発生します。これは、実行する必要があることです。
AS3でこれほど大きな画像からデータを取得できるようにするために使用できる回避策はありますか?