iOS在应用中添加自定义字体
2016-07-16 13:55
483 查看
摘要: 开发某些娱乐性应用以及游戏时,个性的字体往往十分重要,这篇博客将介绍在项目中添加自定义的字体,并提供了一个小技巧。
2、注意Build Phases中的Copy Bundle Resources中是否导入了文件:
3、在项目的info.plist文件中添加字体键值如下:
这个数组中可以添加多个元素,多个字体库。
4、这时实际上我们已经将字体添加进了工程中,但是在在使用这个字体时,字体的名字有时和文件名是不一样的,我们需要知道真实的字体名称,通常情况下,我们会讲所有字体名称打印出来:
5、找到我们需要的字体,如下使用即可:
为了在以后使用自定义字体的时候不必一次一次的经历这样的痛苦,在Xcode6.3的环境下,我将所有的系统字体获取后写入了plist文件,将这个plist文件导入项目中,通过如下方法,可以只打印出新增加的字体:
如果你也需要,字体集plist文件的地址:https://github.com/ZYHshao/YHBaseFoundationTest/tree/master/YHBase/BaseSouce。
专注技术,热爱生活,交流技术,也做朋友。
——珲少 QQ群:203317592
iOS在应用中添加自定义字体
一、在应用中添加自定义字体的步骤
1、网上提供的字体库有很多,下载完成后,将其导入工程中,一般为ttf格式。2、注意Build Phases中的Copy Bundle Resources中是否导入了文件:
3、在项目的info.plist文件中添加字体键值如下:
这个数组中可以添加多个元素,多个字体库。
4、这时实际上我们已经将字体添加进了工程中,但是在在使用这个字体时,字体的名字有时和文件名是不一样的,我们需要知道真实的字体名称,通常情况下,我们会讲所有字体名称打印出来:
for (NSString * name in [UIFont familyNames]) { for (NSString * fo in [UIFont fontNamesForFamilyName:name]) { NSLog(@"%@",fo); } }
5、找到我们需要的字体,如下使用即可:
UIFont * font = [UIFont fontWithName:@"yuweij" size:14];
二、如何快速的找到新添加的字体名字
如果你将所有字体都打印了出来,在其中找到新的字体名称是身份困难的,尤其是当这个字体的名称和文件名相差甚远的时候,这是一件非常痛苦的事情。为了在以后使用自定义字体的时候不必一次一次的经历这样的痛苦,在Xcode6.3的环境下,我将所有的系统字体获取后写入了plist文件,将这个plist文件导入项目中,通过如下方法,可以只打印出新增加的字体:
NSString *paths=[[NSBundle mainBundle]pathForResource:@"font" ofType:@"plist"]; //得到完整的文件名 NSDictionary * rootDic = [NSDictionary dictionaryWithContentsOfFile:paths]; //遍历当前所有字体 for (NSString * name in [UIFont familyNames]) { NSArray * fontArray = [rootDic objectForKey:name]; BOOL tip = NO; for (NSString * fo in [UIFont fontNamesForFamilyName:name]) { for (NSString * tmp in fontArray) { if ([tmp isEqualToString:fo]) { tip=YES; break; } } if (!tip) { NSLog(@"%@",fo); } } }
如果你也需要,字体集plist文件的地址:https://github.com/ZYHshao/YHBaseFoundationTest/tree/master/YHBase/BaseSouce。
专注技术,热爱生活,交流技术,也做朋友。
——珲少 QQ群:203317592
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- 讲解iOS开发中基本的定位功能实现
- iOS中定位当前位置坐标及转换为火星坐标的方法
- js判断客户端是iOS还是Android等移动终端的方法
- iOS应用开发中AFNetworking库的常用HTTP操作方法小结
- iOS应用中UISearchDisplayController搜索效果的用法
- iOS App开发中的UISegmentedControl分段组件用法总结
- IOS开发环境windows化攻略
- iOS应用中UITableView左滑自定义选项及批量删除的实现
- iOS中UIAlertView警告框组件的使用教程
- 浅析iOS应用开发中线程间的通信与线程安全问题
- iOS中的UIKeyboard键盘视图使用方法小结
- 检测iOS设备是否越狱的方法
- .net平台推送ios消息的实现方法