可能是 Android 平台上最快的图片压缩框架
【回复“1024”,送你一个特别推送】
今天在 GitHub 上瞎逛浏览的时候,看到了一个来自于 ghnor 实现的图片压缩框架。感觉写的不错,很好,就想分享给大家,希望能够对大家有所帮助。
这款图片压缩框架,是 ghnor 作者在 Luban 的算法策略上,丰富了外围的 api,提供更多的可配参数,多线程压缩和不同细粒度的任务控制。
它不仅可以同步压缩和异步压缩,还可以进行个性化的处理去添加水印之类的,而且还可以使压缩可控,扩展了更多的属性。我们现在一起来看看具体用法和特点以及说明。
以下内容,来自于作者 ghnor 的 GitHub 的 README:
依赖
用法用例
-
异步压缩:
Flora.with().load(source...).compress(new Callback<>());
-
同步压缩:
Flora.with().load(R.drawable.test2).compressSync();
可控的压缩任务
更多属性
其他
-
压缩速度
本身内部采用线程池的方案去进行压缩任务,同时进行了必要的内存检查。
在不会OOM的前提下,最大的提升了压缩的速度,常见的9图大小在20M+能够在2s内处理完成。
当然,机器性能,系统当时的内存都是对此产生影响,我的测试机是【魅蓝Note】...
-
压缩效果
由于压缩策略集成自Luban,所以最后图片压缩大小前后对比可以参考Luban。
我在此基础上,对社交产品中常见的长图的需求进行了一定的优化。
最后,如果大家感觉不错,欢迎大家去支持一下这个作者,去 GitHub 上去 star 吧。
地址:https://github.com/loonggg/Flora