【发布时间】:2013-12-23 08:22:26
【问题描述】:
我在 iOS 应用中使用自定义字体取得了成功。
我遵循以下步骤:
- 将字体拖入我的项目并复制到项目中
- 确保字体包含在构建阶段中
- 将字体名称(包括扩展名)添加到应用的 plist 文件中。我确认我使用的是后记名称:SourceSansPro-ExtraLight.ttf
-
尝试使用字体
self.daysLeftLabel.font = [UIFont fontWithName:@"SourceSansPro-ExtraLight" size:14];
但是,只使用通用系统字体。
如果我在我的代码中运行此代码示例:
for (NSString* family in [UIFont familyNames])
{
NSLog(@"%@", family);
for (NSString* name in [UIFont fontNamesForFamilyName: family])
{
NSLog(@" %@", name);
}
}
Source Sans Pro 字体系列不包含在其中,所以有些东西不起作用。
问题是,我对其他自定义 TTF 字体遵循完全相同的顺序,并且它们按预期工作。据我所知,我做的一切都是正确的——包括 plist 文件中经常遗漏的 postscript 名称以及扩展名。
所以,我开始怀疑某些 TTF 字体是否与 iOS 兼容,而另一些则不兼容。是这样吗?
【问题讨论】:
-
info.plist 需要引用实际的文件名,而不是字体名。大小写在文件名中很重要。