BitmapData的数据

1.BitmapData转为ByteArray中数据集

bitmap.getPixels(bitmap.rect)可获得矩阵二进制数据

   bytes:ByteArray = bitmap.getPixels(bitmap.rect); //矩形数据
   bytes.writeShort(bitmap.width); //宽
   bytes.writeShort(bitmap.height); //高
   bytes.writeBoolean(bitmap.transparent); //透明度值
   bytes.compress();// zlib 压缩方法压缩字节数组

 2.还原BitmapData数据

根据宽高及bmp.setPixel(n,m,bytes1.readUnsignedInt())绘制,可还原BitmapData数据

var bytes;
bytes.uncompress();
bytes.position = bytes.length - 5;
width = bytes.readShort()
bytes.position = bytes.length - 3;
height = bytes.readShort();
bytes.position = bytes.length - 1;
alpha = bytes.readBoolean()
var bmpdata:BitmapData = new BitmapData(width ,height , true);
 
var bytes1:ByteArray = bytes.position - 5; //除去其他值
bytes1.position = 0;
for( var m:int=0; m<width; m++){
     for( var n:int=0; n<height ; n++){
        bmpdata.setPixel(n,m,bytes.readUnsignedInt());  //readUnsignedInt() 读取一个无符号的 32 位整数(即32颜色值)
    }
}

你可能感兴趣的:(bitmap)