自定义字体必须要在项目中添加相应的字体文件,一般是以ttf或者otf为后缀,可以去一些第三方网站去下载,比如Google Fonts。下载后发现是一些ttf文件,没错,这是一个系列的字体,有粗体,有斜体,还有不同的大小,方便用户在不同的场景下使用,按照顺序添加到工程中,如图所示:

在build phase中可以查看所添加的字体:

然后在info.plist中Fonts provided by application中添加相应的字体:

到这里,字库文件就准备好了,接下来我们需要确认一下字库的名字,因为代码中需要用名字来指定字体。通常来说,这个名字和文件名是相同的,但也有不同的时候,所以这一步一定不要忽略。
字库的名字可以通过这种方式来获得,代码如下:
for (NSString *fontFamilyName in [UIFont familyNames]) {
NSLog(@"--- %@ ---", fontFamilyName);
for (NSString *fontName in [UIFont fontNamesForFamilyName:fontFamilyName]) {
NSLog(@" %@", fontName);
}
NSLog(@" ");
}
结果如下:

最后我们看看效果:
[_label1 setFont:[UIFont fontWithName:@"Pacifico-Regular" size:25]] ;
[_label2 setFont:[UIFont fontWithName:@"Roboto-BlackItalic" size:25]] ;
[_label3 setFont:[UIFont fontWithName:@"PingFangSC-Ultralight" size:25]] ;

网友评论