重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Android中图片是以bitmap形式存在的,那么bitmap所占内存,直接影响到了应用所占内存大小,首先要知道bitmap所占内存大小计算方式:
创新互联公司公司2013年成立,先为芦溪等服务建站,芦溪等地企业,进行企业商务咨询服务。为芦溪企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。图片长度 x 图片宽度 x 一个像素点占用的字节数
以下是图片的压缩格式:
其中,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());