当前位置: 代码迷 >> Android >> android 怎么压缩图片
  详细解决方案

android 怎么压缩图片

热度:110   发布时间:2016-05-01 22:05:56.0
android 如何压缩图片
android 如何压缩图片,我用Gallery加载时图片时有一些图片太大,导致内存溢出,想把这些图片压缩成一个缩略图,该怎么做?
不能只是缩小图片大小,而是要把体积降下来,几百K的图片压缩成几K或几百B

------解决方案--------------------
压缩图片质量:
bitmap.compress(Bitmap.CompressFormat.JPEG, quality, fos);
其中的quality为0~100, 可以压缩图片质量, 不过对于大图必须对图片resize 

这个是等比例缩放:
bitmap = Bitmap.createScaledBitmap(bitmap, width, height, false);

这个是截取图片某部分:
bitmap = Bitmap.createBitmap(bitmap, x, y, width, height);

这几个方法都是针对Bitmap的, 不过鉴于Bitmap可以从file中读取, 也可以写入file. 

这是我知道Android自带库里中唯一可以缩放和压缩的图片方法.
------解决方案--------------------
可以对bitmap用距阵的方式缩小,很简单的,看看就明白了。
------解决方案--------------------
内存溢出,你这么处理就可以。用完及时回收
BitmapFactory.Options options = new BitmapFactory.Options();

options.inTempStorage = new byte[16*1024];

Bitmap bitmapImage = BitmapFactory.decodeFile(path,opt);
  相关解决方案