掌握聚合最新动态了解行业最新趋势
API接口,开发服务,免费咨询服务

移动端WebP兼容解决方案

前言

移动端应用往往有大量的图片展示场景,图片的大小对企业至关重要。WebP 作为一种更高效的图片编码格式,平均大小比 PNG/JPG/ GIF/动态 GIF格式减少 70%(对比测试页面),且质量没有明显的差别,是其他图片格式极佳的替代者。

1、潜在问题

在移动端使用 WebP 图片,存在两个问题:

1)图片基本上是 PNG/JPG/GIF/动态 GIF 格式,需要转换为 WebP 格式?

图片格式转换分为实时、提前处理两种,提前处理需要已知图片情况,还会增加 WebP 图片的存储,所以用实时处理是比较佳的。

2)移动端原生或默认浏览器是否支持 WebP?如果要兼容众多浏览器,该怎么办?

Android 原生和Chrome 浏览器都支持 WebP,iOS 原生和 Safari 浏览器尚不支持 WebP。其他浏览器方面,除 Opera(欧朋)外,都还不支持。

本文结合又拍云图片处理,探讨一种通用移动端 App 使用 WebP 方式。

2、解决方案

 

1)终端向服务端请求图片(.jpg/.png/.gif等),又拍云 CDN 收到请求后,先去存储源获取图片。

2)访问图片处理,把图片转换成 WebP。

3)把 WebP 图片返回给终端。

4)终端呈现 WebP。

3、图片格式转换

又拍云 CDN 如何知道那张图片要转换成 WebP,因此,需要在访问 URL 上带上相关参数。

WebP 格式转换参数 /format/webp。

例如,图片 URL 是 https://p.upyun.com/docs/cloud/demo.jpg

则图片格式转 WebP 的 URL 是 https://p.upyun.com/docs/cloud/demo.jpg!/format/webp

其中,! 是分隔符。

4、存在问题

这个方案虽然实现了图片大小降低和加载时间降低,但没有彻底解决终端兼容问题。Ps:我们的研究也不会止于此

终端兼容问题有:

1)iOS 原生不支持 WebP,怎么呈现 WebP?

iOS 上呈现 WebP的方式是解码 WebP。如何解码 WebP?请看《移动端如何使用 WebP(下)》 。

2)Safari、Firefox、Edge 等浏览器不支持 WebP,怎么兼容?

解决方法是用 JS 判断用户的浏览器,根据浏览器类型,决定是否把图片转成 WebP。如果用户浏览器是 Chrome,Chrome 支持 WebP,可以在 URL 后带上 !/format/webp,使用 WebP 图片;如果用户浏览器是 Safari,Safari 不支持 WebP,URL 后不加 !/format/webp,使用原生图片。

后续又拍云会在 CDN 中集成这个判断,更好的方便用户使用 WebP。

另外一种方法是使用插件,详细请阅读 WebPJS

推荐阅读:

1. WebP图片压缩效果对比

2. 移动端如何使用WebP

原文来自:又拍云

声明:所有来源为“聚合数据”的内容信息,未经本网许可,不得转载!如对内容有异议或投诉,请与我们联系。邮箱:marketing@think-land.com

  • 全球天气预报

    支持全球约2.4万个城市地区天气查询,如:天气实况、逐日天气预报、24小时历史天气等

    支持全球约2.4万个城市地区天气查询,如:天气实况、逐日天气预报、24小时历史天气等

  • 购物小票识别

    支持识别各类商场、超市及药店的购物小票,包括店名、单号、总金额、消费时间、明细商品名称、单价、数量、金额等信息,可用于商品售卖信息统计、购物中心用户积分兑换及企业内部报销等场景

    支持识别各类商场、超市及药店的购物小票,包括店名、单号、总金额、消费时间、明细商品名称、单价、数量、金额等信息,可用于商品售卖信息统计、购物中心用户积分兑换及企业内部报销等场景

  • 涉农贷款地址识别

    涉农贷款地址识别,支持对私和对公两种方式。输入地址的行政区划越完整,识别准确度越高。

    涉农贷款地址识别,支持对私和对公两种方式。输入地址的行政区划越完整,识别准确度越高。

  • 人脸四要素

    根据给定的手机号、姓名、身份证、人像图片核验是否一致

    根据给定的手机号、姓名、身份证、人像图片核验是否一致

  • 个人/企业涉诉查询

    通过企业关键词查询企业涉讼详情,如裁判文书、开庭公告、执行公告、失信公告、案件流程等等。

    通过企业关键词查询企业涉讼详情,如裁判文书、开庭公告、执行公告、失信公告、案件流程等等。

0512-88869195
数 据 驱 动 未 来
Data Drives The Future