图片压缩很常见,实现有很多方式,这里使用很好用luban ,Luban(鲁班)就是通过在微信朋友圈发送近100张不同分辨率图片,对比原图与微信压缩后的图片逆向推算出来的压缩算法。 压缩率真的很高,并且很清晰。基本秒杀,使用系统的压缩方式等。使用
也算很简单
我先说下使用步骤,最后放上 测试数据。
1.引入框架
compile 'top.zibin:Luban:1.1.8'
2.代码使用
Luban.with(this) //context .load(photos) // 需要压缩的图片file .ignoreBy(100) //压缩率 ,默认100 .setTargetDir(getPath()) //压缩后文件目录, 如果希望替换原图就不要这行 .filter(new CompressionPredicate() { @Override public boolean apply(String path) { return !(TextUtils.isEmpty(path) || path.toLowerCase().endsWith(".gif")); } }) .setCompressListener(new OnCompressListener() { @Override public void onStart() { // TODO 压缩开始前调用,可以在方法内启动 loading UI } @Override public void onSuccess(File file) {