1-您需要将 .otf 或 .ttf 中的字体复制到您的项目中。例如在支持文件中。
2 - 您需要编辑 .plist 文件。
3 - 将“应用程序提供的字体”键添加到您的 plist 中,并在第 0 项中将您复制的字体的确切文件名复制到带有扩展名的支持文件中。例如:“JosefinSansStd-Light_0.otf”
4 - 确保您导入应用的字体被打包到应用本身。通过选择您的目标,然后选择构建阶段,然后复制捆绑资源来做到这一点。如果您没有在其中看到您的字体,请将其从支持文件中拖动。
5 - 最后,您希望在应用启动时列出所有字体,以便查看您的字体的可用名称。您将使用这段小代码来做到这一点:
NSArray *fontFamilies = [UIFont familyNames];
for (int i = 0; i < [fontFamilies count]; i++)
{
NSString *fontFamily = [fontFamilies objectAtIndex:i];
NSArray *fontNames = [UIFont fontNamesForFamilyName:[fontFamilies objectAtIndex:i]];
NSLog (@"%@: %@", fontFamily, fontNames);
}
在打印结果中搜索您的字体,例如,我会搜索“Josefin”,我会看到实际的字体名称是 "JosefinSansStd-Light"。之后,您只需要通过以下方式使用该字体:
UIFont *customFont = [UIFont fontWithName:@"JosefinSansStd-Light" size:20];
在 iOS8 中,您将字体直接添加到项目中,并且它们在界面构建器中可见。修改您的代码以解决此问题,但以编程方式为 iOS7 设置字体并在 xCode6 界面构建器中选择它。 PS。 xCode6 中的界面生成器为您提供正确的字体名称,您可以将其复制粘贴到下面的代码中。
#define SYSTEM_VERSION_LESS_THAN(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedAscending)
if(SYSTEM_VERSION_LESS_THAN(@"8.0"))
{
UIFont *customFont = [UIFont fontWithName:@"OpenSans-Light" size:32];
self.registerLabel.font = customFont;
}
希望这会有所帮助,干杯。
For More Information check This Post