博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
图片压缩知识梳理(9) 选择合适的图片格式
阅读量:6497 次
发布时间:2019-06-24

本文共 887 字,大约阅读时间需要 2 分钟。

一、概述

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

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

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

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

VD > WebP > PNG > JPG复制代码

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

  • 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时,应当尽可能在用户没有察觉的情况下,采用之前提到的优化手段,对这些资源进行压缩。

转载地址:http://kvuyo.baihongyu.com/

你可能感兴趣的文章
关于C语言中单双引号的问题
查看>>
I00003 贝尔三角形
查看>>
HDU1200 POJ2039 ZOJ2208 UVALive3084 To and Fro【密码】
查看>>
CCF201403-1 相反数(100分)
查看>>
表单通过连接数据库数据进行验证
查看>>
redis hash操作 list列表操作
查看>>
利用Hibernate 框架,实现对数据库的增删改查
查看>>
mysql开启远程连接权限
查看>>
关于商米D1S,USB默认权限在关机后丢失的FAQ
查看>>
css3 text-transform变形动画
查看>>
scikit-learn中文api
查看>>
一个完整的大作业--广州市社会保障(市民)卡服务网
查看>>
迭代器和生成器
查看>>
STM32 内存管理实验
查看>>
python注释、脚本参数、字节码
查看>>
Vue 组件之间传值
查看>>
使用pupperlabs yum repo
查看>>
指向方法之委托(一)
查看>>
2013 Multi-University Training Contest 3 部分解题报告
查看>>
Linux 网桥配置命令:brctl
查看>>