ios中使用自己添加的字体
2016-01-07 13:47
363 查看
我们公司的设计是一位有情怀的设计师, 他觉得苹果系统自带的字体太丑了, 就想用兰亭中黑. 故事就这样开启了
1. 给设计师要他想添加的字体, 记住千万要TTF格式, 千万要TTF格式, 千万要TTF格式, 重要的事情说三次,
我说下原因, 字体库有两种格式, 一种是TTF格式, 一种是TTC格式, TTF是一种单一的字体库, 里面只有一个字体, 但是, 但是 TTC格式是几种字体库的集合, 如果你添加的是TTC格式的字体, 那么你的项目是拖得XIB文件, 恭喜你, 没问题, 你在设置字体的时候, 会给你列出TTC字体库里面的全部字体, 但是 , 但是, 如果你是用的代码, 那你也能找到这个字体,
但是你无法选择使用里面的那个字体,
我举个例子吧, 我们设计师给我的是TTC格式的兰亭黑体, 里面包含三种字体, 兰亭大黑, 兰亭中黑, 兰亭纤黑, 我用xib拖得控件设置字体的时候, 有三种选择可以选择, 但是我用代码设置字体的时候, 只有一个兰亭黑体, 无法选择大黑, 中黑, 纤黑, 系统默认纤黑, 我当初就栽倒了这个坑里, 这个问题纠结了两小时,最后才发现是是字体库的问题, 特意下载了一个兰亭中黑TTF
字体库, 才达到了设计师想要的效果
2. 把字体库添加到程序中, 这里需要查看一下, 是否添加到程序中, Target -> Bundle Phases -> Copy Bound Resources 中是否存在 没有添加上
![](https://img-blog.csdn.net/20160107134444607?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
3. 在Info.plist中添加自定义字体文件
(这里的自定义字体是字体包的名字)
![](https://img-blog.csdn.net/20160516102939551?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
4. 查看一下字体库是否添加上了
[UIFontfamilyNames]查看有没有添加上
注意这里的名字可能和你的字体包的名字不太一样, 需要查看你的文字包在系统上的名字(双击打开就可以看到了)
![](https://img-blog.csdn.net/20160107134358422?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
5.
[label setFont:[UIFontfontWithName:@"FZLanTingHei-DB-GBK"size:12]];
尽情的使用吧
1. 给设计师要他想添加的字体, 记住千万要TTF格式, 千万要TTF格式, 千万要TTF格式, 重要的事情说三次,
我说下原因, 字体库有两种格式, 一种是TTF格式, 一种是TTC格式, TTF是一种单一的字体库, 里面只有一个字体, 但是, 但是 TTC格式是几种字体库的集合, 如果你添加的是TTC格式的字体, 那么你的项目是拖得XIB文件, 恭喜你, 没问题, 你在设置字体的时候, 会给你列出TTC字体库里面的全部字体, 但是 , 但是, 如果你是用的代码, 那你也能找到这个字体,
但是你无法选择使用里面的那个字体,
我举个例子吧, 我们设计师给我的是TTC格式的兰亭黑体, 里面包含三种字体, 兰亭大黑, 兰亭中黑, 兰亭纤黑, 我用xib拖得控件设置字体的时候, 有三种选择可以选择, 但是我用代码设置字体的时候, 只有一个兰亭黑体, 无法选择大黑, 中黑, 纤黑, 系统默认纤黑, 我当初就栽倒了这个坑里, 这个问题纠结了两小时,最后才发现是是字体库的问题, 特意下载了一个兰亭中黑TTF
字体库, 才达到了设计师想要的效果
2. 把字体库添加到程序中, 这里需要查看一下, 是否添加到程序中, Target -> Bundle Phases -> Copy Bound Resources 中是否存在 没有添加上
3. 在Info.plist中添加自定义字体文件
(这里的自定义字体是字体包的名字)
4. 查看一下字体库是否添加上了
[UIFontfamilyNames]查看有没有添加上
注意这里的名字可能和你的字体包的名字不太一样, 需要查看你的文字包在系统上的名字(双击打开就可以看到了)
5.
[label setFont:[UIFontfontWithName:@"FZLanTingHei-DB-GBK"size:12]];
尽情的使用吧
相关文章推荐
- 苹果与Siri的七年之痒:“宫斗”戏码不断上演
- 一步一步跟我学易语言之第二个易程序菜单设计
- 央视新闻报道XcodeGhost事件
- flash 系统字体显示问题
- C#及WPF获取本机所有字体和颜色的方法
- 谈谈网页设计中的字体应用Font Set
- PDF里的文字显示模糊的解决方法
- 保证可下载的漂亮动作2008奥运比赛项目字体
- 原生JS仿苹果任务栏菜单,放大效果的菜单
- 基于逻辑运算的简单权限系统(原理,设计,实现) VBS 版
- C#实现字体旋转的方法
- C#中设计、使用Fluent API
- 网页设计中的 serif 和 sans-serif字体应用
- 基于逻辑运算的简单权限系统(原理,设计,实现) VBS 版
- 优化WordPress的Google字体以加速国内服务器上的运行
- C#实现缩放字体的方法
- ExtJs默认的字体大小改变的几种方法(自己整理)
- 一个实现字体大中小方法的JavaScript代码
- JavaScript设计模式初探
- JavaScript 组件之旅(一)分析和设计