图片压缩方式常用的有尺寸压缩、质量压缩、格式变化以及通过JNI调用libjpeg库来进行压缩,下面就先分别介绍下常见的质量压缩和尺寸压缩。(尺寸压缩,质量压缩底层也是通过调用native的方法进行压缩的,而native中的则是通过Skia这个库实现的,但是,最终还是调用了libjpeg库进行压缩的。)
1. 格式变化
现在android支持的图片格式有三种:png、jpeg、webp;
- png: 无损图片的压缩类型,能保存透明等图,它同时提供 24位和48位真彩色图像支持以及其他诸多技术性支持。
- Jpeg:有损图片的压缩类型,有损压缩方式去除冗余的图像和彩色数据,获取得极高的压缩率的同时能展现十分丰富生动的图像,换句话说,就是可以用最少的磁盘空间得到较好的图像质量。但是,bitmap quality属性越小,图片的清晰度越差。
- WebP:WebP(发音 weppy,项目主页),是谷歌推出的一种支持有损压缩和无损压缩的图片文件格式,派生自图像编码格式 VP8。
结论:
2. 质量压缩
设置bitmap quality属性