iOS如何显示webp图片

什么是webp图片

WebP最初在2010年发布,目标是减少文件大小,但达到和JPEG格式相同的图片质量,希望能够减少图片档在网络上的发送时间,由谷歌研发,在安卓上的支持也蛮好的,从安卓4.0开始就已经原生支持了,但在iOS系统目前不支持webp图片,还是需要我们做些特殊处理的。

1.SDWebImage(支持 WebP)的安装与实现

pod 'SDWebImage', '4.4.2'           #图片加载
pod 'SDWebImage/WebP'               #SDWebImage支持.WebP格式图片

SDWebImage(支持 WebP)安装内置了libwebp源码库,并在UIImage+WebP.h中封装了WebP格式的解码功能。通过 SDWebImage的常规用法即可展示WebP 格式的图片。

2.安装可能遇到的问题:

2.1在执行pod install后终端提示Error installing libwebp,如图:

20190426182937960.png

这是由于Pods提供的libwebp的资源地址无法连接,最简单有效的修改方式就是修改libwebp的资源地址,再执行pod install即可解决。如图:

2.2 解决步骤

  • 终端依次执行下面前三行命令,获得libwebp版本文件文件夹
pod repo               #查看 cocoapods 本地库路径
find xxx -iname libwebp    #在本地库中找到libwebp版本文件文件夹
cd xxx                  #进入libwebp版本文件文件夹
ls -l              #查看所支持的版本

1.前往libwebp版本文件文件夹,找到对应的版本文件夹(如图中报错的v0.6.1)
2.* 打开libwebp.podspec.json文件,并修改文件中source的值为https://github.com/webmproject/libwebp.git
3.终端重新进入工程文件夹下执行pod install即可

详细流程

1.查看Mac中cocoapods 本地库路径:pod repo

Mac-mini:~ ammk$ pod repo

master
- Type: git (master)
- URL:  https://github.com/CocoaPods/Specs.git
- Path: /Users/ammk/.cocoapods/repos/master

1 repo
  1. 在Path中找到libwebp对应的文件夹: find /Users/ammk/.cocoapods/repos/master -iname libwebp
Mac-mini:~ ammk$ find /Users/ammk/.cocoapods/repos/master -iname libwebp
/Users/ammk/.cocoapods/repos/master/Specs/1/9/2/libwebp
Mac-mini:~ ammk$ 

3.进入libwebp版本文件文件夹,可查看所支持的版本

Mac-mini:~ ammk$ cd /Users/ammk/.cocoapods/repos/master/Specs/1/9/2/libwebp
Mac-mini:libwebp ammk$ ls -l
total 0
drwxr-xr-x  3 ammk  staff  96  4  5  2017 0.4.1
drwxr-xr-x  3 ammk  staff  96  4  5  2017 0.4.2
drwxr-xr-x  3 ammk  staff  96  4  5  2017 0.4.3
drwxr-xr-x  3 ammk  staff  96  4  5  2017 0.4.4
drwxr-xr-x  3 ammk  staff  96  4  5  2017 0.5.0
drwxr-xr-x  3 ammk  staff  96  4  5  2017 0.5.1
drwxr-xr-x  3 ammk  staff  96  8  9  2017 0.5.2
drwxr-xr-x  3 ammk  staff  96  8  9  2017 0.6.0
drwxr-xr-x  3 ammk  staff  96 10 29 10:06 0.6.1
drwxr-xr-x  3 ammk  staff  96 10 30 11:17 1.0.0

4.前往文件夹,找到对应的版本文件夹,修改文件中的source值
( 点击桌面 前往-前往文件夹-输入/Users/ammk/.cocoapods/repos/master/Specs/1/9/2/libwebp)即可


屏幕快照 2020-01-08 上午11.50.28.png

5.再cd到原程序文件下,重新pod install。

注:如果pod install成功回到项目中报错。检查SDWebImage的版本号。本人亲测低版本的SDWebImage是会报错。如果报错把SDWebImage的版本号更新。

你可能感兴趣的:(iOS如何显示webp图片)