Android 打造Bitmap压缩工具库

github有这么一个Bitmap压缩库:Luban(鲁班)—Image compression with efficiency very close to WeChat Moments/可能是最接近微信朋友圈的图片压缩算法

因为觉得算法可能真的不错,但是这个库不符合自己需求,功能太少,所以自己根据算法打造了一款类似的Bitmap压缩工具库(bitmaptoolkit)。

bitmaptoolkit库已经上传到github了,地址是:https://github.com/JohanMan/bitmaptoolkit

使用实例

默认是使用“可能是最接近微信朋友圈的图片压缩算法”

BitmapCompressor.with(this)
                .load("要压缩的文件路径")
                .compress(new BitmapCompressor.CompressCallback() {
                    @Override
                    public void onComplete(String filePath) {
                        imageView.setImageBitmap(BitmapFactory.decodeFile(filePath));
                    }
                    @Override
                    public void onError(Exception exception) {
                        Log.e(getClass().getName(), exception.getMessage());
                    }
                });

当然,还提供了其他方法,满足开发者的需求(要不然直接用人家的库):

BitmapCompressor.with(this)
                .load("要压缩的文件路径")
                .resize(480, 640)
                .limitByteSize(100 * 1024)
                .config(Bitmap.Config.RGB_565)
                .target("保存压缩后保存的路径")
                .compress(new BitmapCompressor.CompressCallback() {
                    @Override
                    public void onComplete(String filePath) {
                        imageView.setImageBitmap(BitmapFactory.decodeFile(filePath));
                    }
                    @Override
                    public void onError(Exception exception) {
                        Log.e(getClass().getName(), exception.getMessage());
                    }
                });

load: 加载要压缩的文件。
resize: 设置压缩图片的宽高
limitByteSize: 限制压缩的大小。
config: 设置压缩时的色彩模式。
target: 设置压缩后文件保存的路径。

有兴趣的可以看源码!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值