级别:★☆☆☆☆
标签:「iconFont」「Tool」「UIFont」
做者: 647
审校: QiShare团队php
需求:有时候咱们本身想独立开发一些
App
,但苦恼没有设计给icon
切图? 这可怎么办?
今天咱们来介绍一种比较高效且高质量的替代方案:使用矢量图标 ——iconFont
。html
iconFont:是阿里巴巴提供的一个矢量图标库。简单来讲,就是能够把icon转换成font,再经过文本展现出来。官网连接
支持:Web
、iOS
、Android
平台使用。git
登陆iconFont,挑选你须要的icon,并把它们加入购物车,下载代码。github
解压下载的压缩包,注意demo_index.html
和iconFont.ttf
文件。打开工程将ttf
导入到项目中,并在info.plist
中配置。swift
demo_index.html
、iconFont.ttf
iconFont.ttf
文件导入项目:打开demo_index.html
预览iconFont
所对应的Unicode
编码。并在项目中应用。微信
demo_index.html
文件\u{编码}
使用Unicode编码//...
label.font = UIFont.init(name: "iconFont", size: 26.0)
label.text = "\u{e658}"
//...
复制代码
\U0000编码
使用Unicode编码//...
label.font = [UIFont fontWithName:@"uxIconFont" size: 34];;
label.text = @"\U0000e658";
//...
复制代码
这样,在没有设计提供切图的状况下,就能够用Label
的iconFont
字体代替切图达成ImageView
的效果了。svg
先把icon
经过像素点描述成自定义字体(svg格式字体),而后打包成ttf
格式的文件,再经过对应的unicode
对应到相关的icon
。工具
ttf
文件导入冲突问题:因为从iconFont上打包生成的ttf
文件,字体名均为“iconFont”,所以从官网上下载的ttf
文件,字体名均为“iconFont”
。所以多ttf
文件引入时,会有冲突。字体
解决方案:用一些工具修改字体名,再导入多个ttf
文件。(记得在info.plist
文件里配置)编码
Unicode
变化问题:尽可能使用一个帐号下载ttf资源,不一样的环境下可能会致使生成的Unicode
不一样。从而给项目替换icon
带来成本。
iconFont
目前应该不支持商用,除非有特别的许可。 本身独立写一些小项目的时候可使用。
了解更多iOS及相关新技术,请关注咱们的公众号:
小编微信:可加并拉入《QiShare技术交流群》。
关注咱们的途径有:
QiShare(简书)
QiShare(掘金)
QiShare(知乎)
QiShare(GitHub)
QiShare(CocoaChina)
QiShare(StackOverflow)
QiShare(微信公众号)
推荐文章:
DarkMode、WKWebView、苹果登陆是否必须适配?
iOS 接入 Google、Facebook 登陆(二)
iOS 接入 Google、Facebook 登陆(一)
Nginx 入门实战 iOS中的3D变换(二)
iOS中的3D变换(一)
WebSocket 双端实践(iOS/ Golang)
今天咱们来聊一聊WebSocket(iOS/Golang)
奇舞团安卓团队——aTaller
奇舞周刊