过程相对简单
1. 拷贝自定义字体资源包到项目工程
2. 在info.plist文件中注册字体
3. 在工程Build Phases -> ** Copy Bundle Resources**中复制字体资源包
4. 代码检查查询加入的字体并使用
- 添加字体资源包
可以直接把字体包拖进项目中 -
info.plist中注册字体
在属性列表中添加Fonts provided by application,并在其子项中添加字体信息。注意:plist文件中写的文件的全称,包括文件后缀。
15418300069970.jpg
如上图所示,需要在info.plist中填入名称与扩展名的全部信息
15418301667172.jpg
-
复制字体资源包到Copy Bundle Resource
15418302478048.jpg
- 代码检查加入的字体
/**
* 检查自定义字体族是否成功加入
*/
// 取出系统安装了的所有字体族名
NSArray *familyNames = [UIFont familyNames];
NSLog(@"系统所有字体族名:%@", familyNames);
// 打印字体族的所有子字体名(每种字体族可能对应多个子样式字体,例如每种字体族可能有粗体、斜体、粗斜体等等样式)
for(NSString *familyName in familyNames) {
// 字体族的所有子字体名
if ([familyName isEqualToString:@"DINEngschrift"]) {
NSArray *detailedNames = [UIFont fontNamesForFamilyName:familyName];
NSLog(@"手动添加的 ===》》》》\n字体族%@的所有子字体名:%@", familyName,detailedNames);
}
NSArray *detailedNames = [UIFont fontNamesForFamilyName:familyName];
NSLog(@"\n字体族%@的所有子字体名:%@", familyName,detailedNames);
}
- 使用。找到自己添加的字体名,可以用宏定义出来,就可以使用了
#define CustemFontName @"DINEngschrift"
label.font = [UIFont fontWithName:CustemFontName size:15];
网友评论