Bitmap如何保存成为一个bmp文件

很多网友可能发现了Android的Bitmap对象无法保存成为一个bmp文件, 即提供的方法只有 compress(Bitmap.CompressFormat format, int quality, OutputStream stream) ,可以存为png和jpg,png可能还好说,但是jpg是有损压缩会降低图片的质量,其实Google还提供了一个API在Bitmap类,通过 copyPixelsToBuffer(Buffer dst) 这个方法来解决,Buffer类型,和前几天我们说到的NIO中的ByteBuffer处理方式一样,需要说明的是java中的Buffer在内存中是连 续成块的,同时底层有C++支持效率还是很高的。
通过copyPixelsToBuffer(Buffer dst) 方法将会返回一个RGB8888格式的DIB文件,DIB位图和设备无关,这里Tony提醒大家,如果想显示出位图,还需要将其加上位图的文件头才行。

 

Bitmap如何保存成为一个bmp文件_第1张图片

 

转自eoe

你可能感兴趣的:(java,android,Stream,Google,buffer,DST)