Android应用开发之PNG、IconFont、SVG图标资源优化详解

========

最近因为一些个人私事导致好久没写博客了,多事之年总算要过去了,突然没了动力,所以赶紧先拿个最近项目中重构的一个小知识点充下数,老题重谈。

在我们App开发中大家可能都会有过如下痛疾(程序员和设计妹妹注意喽):

  • 好多小的图标好烦人,又占体积还要考虑分辨率,一拉伸就模糊等。

  • 同一个图标不同状态还有不同颜色的多张。

  • 总是幻想IOS、Android、Web等对于一个图标只切一次图多好。

如果你有过类似的痛疾那么下面讨论的故事就是一个完美的解决方案,当然了,采用下面方案对于重型应用或者固件级的优化才会十分明显,对于普通小应用那就要看自己了。

这里写图片描述

2 PNG、IconFont、SVG理论

========================

PNG为位图,是由不同的排列和染色的像素点组成的图像,当放大位图时就能清晰的看见无数个小方块(像马赛克一样),所以位图的扩大实质是增加单个像素点的大小,故而导致在不同分辨率表现非常糟糕。

SVG为可缩放矢量图,它不会像位图一样因为缩放而让图片质量下降,他在不同分辨率的表现都一样清晰。

IconFont是WebFont形式的图标,你可以把他认为就是WebFont,该类东东的制作来自于SVG矢量图,所以它不会像位图一样因为缩放而让图片质量下降,他在不同分辨率的表现都一样清晰。

下面我们简单给出这几种格式图标素材的对比:

| 图标类型 | 构成 | 优势 | 劣势 |

| — | — | — | — |

| PNG | 独立像素点 | 可以实现各种色彩及真实画面的复现 | 体积比较大,缩放和旋转易失真 |

| SVG | 向量 | 体积较小,缩放和旋转不失真 | 制作色彩变化太多的图象难度比较大 |

| IconFont | WebFont | 体积较小,缩放和旋转不失真 | 基本不支持多色彩图像,一般都是单色 |

有了上面这些对比之后,在正式开始实战之前我们先来简单粗暴了解下SVG与IconFont在App中的优点吧,不然下文就没有存在的意义喽,如下:

  • 图标集中处理,设计妹妹只用出一次图喽。

  • 减少重型应用或者固件大小,因为IconFont是字符串而不是图片,SVG的体积也小于PNG。

  • 因为IconFont的绘制原理和普通文本一样,所以运行时会占用更小的内存空间。

听着挺诱人,好吊的样子,实际下面我们来看一下你就明白啦。

3 PNG、IconFont、SVG实战

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值