Android实现图片压缩(bitmap的六种压缩方式)-创新互联

Android中图片是以bitmap形式存在的,那么bitmap所占内存,直接影响到了应用所占内存大小,首先要知道bitmap所占内存大小计算方式:

创新互联公司公司2013年成立,先为芦溪等服务建站,芦溪等地企业,进行企业商务咨询服务。为芦溪企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

图片长度 x 图片宽度 x 一个像素点占用的字节数

以下是图片的压缩格式:

Android实现图片压缩(bitmap的六种压缩方式)

其中,A代表透明度;R代表红色;G代表绿色;B代表蓝色。

ALPHA_8


表示8位Alpha位图,即A=8,一个像素点占用1个字节,它没有颜色,只有透明度


ARGB_4444


表示16位ARGB位图,即A=4,R=4,G=4,B=4,一个像素点占4+4+4+4=16位,2个字节


ARGB_8888


表示32位ARGB位图,即A=8,R=8,G=8,B=8,一个像素点占8+8+8+8=32位,4个字节


RGB_565


表示16位RGB位图,即R=5,G=6,B=5,它没有透明度,一个像素点占5+6+5=16位,2个字节

我是用的小米手机2s来测试的,从sd卡取出一个照片,如下所示:

bit = BitmapFactory.decodeFile(Environment
        .getExternalStorageDirectory().getAbsolutePath()
        + "/DCIM/Camera/test.jpg");

    Log.i("wechat", "压缩前图片的大小" + (bit.getByteCount() / 1024 / 1024)
        + "M宽度为" + bit.getWidth() + "高度为" + bit.getHeight());

分享标题:Android实现图片压缩(bitmap的六种压缩方式)-创新互联
链接分享:http://pwwzsj.com/article/cdgcpg.html