【iOS】自定义字体

2019-08-28  本文已影响0人  拔丝豌豆

步骤:

1.将准备好的字体文件加入项目中

2.打开Build Phases—Copy Bundle Resources,确保刚添加的字体文件在列表中,如果没有,需要手动加到这里

3.编辑”项目名-Info.plist”文件

(1)addRow—Fonts provided by application,plist存储选择为数组类型

(2)将需要添加的字体的文件名(包含扩展名)填在数组里,可以添加多套字体,每个item都对应一套字体。

4.在Mac下双击字体文件,在顶部标题栏中找到字体的fontName,就是字体名。

 也可以遍历此时项目中可用的字体,使用如下代码:

NSArray *familyNames = [[NSArray alloc] initWithArray:[UIFont familyNames]];

 NSArray *fontNames;

 NSInteger indFamily, indFont;

 for (indFamily=0; indFamily<[familyNames count]; ++indFamily) {

      NSLog(@"Family name: %@", [familyNames objectAtIndex:indFamily]);

      fontNames = [[NSArray alloc] initWithArray:

      [UIFont fontNamesForFamilyName:

      [familyNames objectAtIndex:indFamily]]];

     for (indFont=0; indFont<[fontNames count]; ++indFont){

          NSLog(@" Font name: %@", [fontNames objectAtIndex:indFont]);

      }

 }

在打印的所有字体名中,可以找到新添加的字体包对应的字体名。

5.使用如下方法,就可调用自定义字体。

[UIFont fontWithName:@"你的自定义字体名" size:17];




注意细节:

1.Plist文件直接添加键值也是正确的,一定要选到项目代码对应的Plist,其他plist文件无效。

 2.如果担心找不到位置,可以在项目的project的Info里面修改,这里的修改和直接修改plist文件是一样的。

 一般字体的替换,这里已经结束了。

 在很多公司项目中,不只是为了字体好看而开发自家公司的字体,也会使用一些别的字体中没有的特殊符号,设计师在开发字体时会把这些符号添加到对应的自定义字体包里。

在Xcode中,使用了自定义图标或符号生成的字体,那些自定义的符号就会显示成白色方框或乱码。这时候,手机屏幕上这些自定义的符号使用自定义字体却是可以正常显示的。

出现这种情况,这是因为Xcode显示所用的字体和项目中导入的自定义字体不一样,显示所用的字体包中没有对应的字体编码,就成了乱码格式。


扩展,修改Xcode的字体(自定义):

如何让Xcode也显示自定义的符号呢?解决方法也很简单,修改Xcode的字体

 1.在桌面双击打开自定义字体包,顺着系统提示把字体包安装到Mac上。

如果只是单纯的修改系统字体,没有使用自定义字体,请忽略这一步。

 2.打开Xcode,调出Xcode的preference,应该是 Command 键+ , 键或者 点击顶部的 XCode -> Preference

 3.选择 “Fonts and Colors”

 4.选择一个Theme

 比如:Default

 5.选择该Theme下的的所有的item。

如下图所示: 

 6.点击font对应的 T 图标。

 7.选择好字自定义的字体就可以了。

在Xcode中粘贴进自定义的符号就可以正常显示。

上一篇 下一篇

猜你喜欢

热点阅读