图片压缩知识梳理(9) - 选择合适的图片格式

一、概述

在这一整个关于图片压缩的知识梳理过程中,我们介绍了四种图片格式的基本原理、使用方式、优化方式,相信大家已经对他们有了一个基本的认识。

那么在实际的开发过程当中,我们应当如何选择合适的图片格式呢?Google提出了它们的建议,我们可以以此为参考,在具体的场景中选择合适的图片格式。

二、如何选择合适的图片格式

对于前面介绍的四种图片格式(VectorDrawable/WebP/PNG/JPG),这几种图片的选择标准可以用下面这幅图来表示,整个选择的优先级为:

VD > WebP > PNG > JPG
图片压缩知识梳理(9) - 选择合适的图片格式_第1张图片

如果大家有阅读前面一系列的文章,那么应该会对这些选取的条件有一个基本的认识,下面就来简要解释一下每个判断条件所设置的含义:

  • Can the image be a VectorDrawable

  • 兼容性问题:App本身需要支持VectorDrawable,对于Android 5.0以上是默认支持的,而对于这5.0以下的应用,则需要引入support包的支持。

  • 图片本身的问题:VectorDrawable适用于那些小而简单的图片,如果图片很大或者很复杂,那么由于栅格化所带来的性能损耗有可能会导致最后得不偿失。

  • Do you support WebP
    这里主要涉及到的是兼容性问题,对于Android 4.3以上,默认支持WebP。而如果是该Android版本之下的平台,那么需要引入so,而引入so就有可能会增大APK的大小,因此,需要在这之间进行权衡。

  • Does it need transparency
    PNGJPG的其中一个差异就是PNG支持透明度,如果需要支持带透明度的图片,那么就必须使用PNG

  • Is it simple or complex
    在不需要支持透明度的情况下,如果图片较为简单,那么我们也可以使用PNG,因为它对于简单图像的压缩效果更好。而如果图片很复杂,那么PNG压缩效果就不如JPG,这时候,我们就可以采用JPG

当我们使用PNGJPG时,应当尽可能在用户没有察觉的情况下,采用之前提到的优化手段,对这些资源进行压缩。

你可能感兴趣的:(图片压缩知识梳理(9) - 选择合适的图片格式)