bytearray に変換された bitmapdata オブジェクトがあります。
var bytes:ByteArray = bitmapDataA.getPixels(bitmapDataA.rect);
後で使用するために .jpg ファイルとして保存します。
writeStream.writeBytes(bytes, 0, bytes.bytesAvailable);
今、データを取得したいとき:
var file:File = File.documentsDirectory.resolvePath("data/"+photoNameVec[loadCounter]);
var fileStream:FileStream = new FileStream();
fileStream.open(file, FileMode.READ);
var fileContent:ByteArray = new ByteArray;
fileStream.readBytes(fileContent);
fileStream.close();
var bmpData:BitmapData = new BitmapData(XXX, YYY);
bmpData.setPixels(bmpData.rect, fileContent);
addChild(new Bitmap(bmpData));
しかし、グラフィックを正しく表示するには、正確な XXX と YYY を取得する必要があります。これどうやってするの?
編集:
bytearray に基づいて bitmapdata の幅と高さを決定する方法がなかったため、撮影したすべての写真を 1024px x 768px に変換することにしました。
var bitmapDataA:BitmapData = new BitmapData(mpLoaderInfo.width, mpLoaderInfo.height);
var matrix:Matrix = new Matrix();
matrix.scale( 1024 / mpLoaderInfo.width, 768 / mpLoaderInfo.height);
var bitmapDataB:BitmapData = new BitmapData(1024,768);
bitmapDataB.draw(mpLoaderInfo.content, matrix, null, null, new Rectangle(0,0,1024,768), true);
bitmapdata のgetPixelsメソッドによって作成された bytearray から Width x Height を取得するためのヒントをまだ待っています。