Android神技之 使用SVG以及自定义IconFont字体库
简介
Google在Android 5.X中增加了对SVG矢量图形的支持。
SVG是什么
- SVG 指可伸缩矢量图形 (Scalable Vector Graphics)
- SVG用来定义用于网络的基于矢量的图形
- SVG使用 XML 格式定义图形
- SVG 图像在放大或改变尺寸的情况下其图形质量不会有所损失
- SVG 是万维网联盟的标准
- SVG 与诸如 DOM 和 XSL 之类的 W3C 标准是一个整体
特点
- 图片放大N倍,图片也不会模糊 ,放大不会失真
Bitmap和SVG的区别
Bitmap(位图)通过在每个像素点上存储色彩信息来表达图像,而SVG是一个绘图标准。与Bitmap对比,svg最大特点是放大不会失真,而且Bitmap需要为不同分辨率设计多套图标,而矢量图不需要。
SVG学习–VectorDrawable的使用
svg矢量图绘制以及转换为Android可用的VectorDrawable资源
如何将SVG转换成VectorDrawable XML资源
svg转换为VectorDrawable 工具
目前找了这么多工具,并没有找到xml转化为VectorDrawable的工具,目前只能通过Android SVG to VectorDrawable这个工具将SVG的图标转化为VectorDrawable的xml文件,后复制该xml文件到AS的drawable的文件夹。
每一个SVG图片需要在AS的drawable里面生成这样一个xml文件,这样只有一套,但是文件太多,因此只需要将PNG合在一个字体里面。
Android中使用iconfont图标
- 从iconfont平台选择使用到的图标,并下载到本地;复制字体文件到assets目录
- 打开下载下来的文件,并在目录中打开demo.html,找到图标相对应的HTML实体字符码
- 打开res/values/string.xml,添加string值:
<string name="icon_erweima"></s