图片处理

图片格式:

  • JPEG

    一种广泛使用的有损压缩图像标准格式,压缩比相对较高,不支持透明和多帧动画。一般摄影的作品是JEPG格式的,通过控制压缩比,可以调整图片的大小。

  • PNG

    一种无损压缩的图片格式,支持完整的透明通道。从图片处理的领域来讲,JEPG只有RGB三个通道,而PNG有ARGB四个通道,因此PNG图片占用空间一般比较大,会无形的增加app的大小,在做app瘦身时一般都要对PNG图片进行梳理以减小其占用的体积。

  • SVG(Scalable Vector Graphics,可缩放矢量图)

    一种基于XML语法的图像格式,本质上是文本文件(可使用文本编辑器查看其XML语法)。其他图像格式都是基于像素处理,SVG则是属于对图像的形状描述,所以体积较小(比JPEG和PNG格式的文件要小很多),且不管放大多少倍都不会失真。

  • BMP(Bitmap)

    优点(无损压缩,图质最好),缺点(文件太大,不利于网络传输)。

  • GIF

    一种古老的图片格式,诞生于1987年,优点(动画存储格式),缺点(最多256色,画质差)。

  • WebP

    Google于2010年发布,支持有损和无损、支持完整的透明通道、支持多帧动画,在保证图片质量的前提下压缩率很高,比JPEG图片体积要小40%左右,目前主流的APP都已经使用了Webp。

    webp的工作原理是:WebP图片被放在一个轻量级的RIFF容器中,虽然每个图片只是增加了很少字节(少到20字节),但是却拥有了容纳更多字节的功能,这样图片就可以增加更多的元数据。虽然webp压缩比很高,但是美中不足的是它的压缩时间相对比较长,差不多是jpeg压缩算法的8倍。