2

我无法让我的 .ttf 文件在我的 iPhone 应用程序中工作。我将此文件添加到我的项目中:

gothamnarrowbook.ttf

我将此添加到我的 plist 中:

<key>UIAppFonts</key>
<array>
    <string>gothamnarrowbook.ttf</string>
</array>

在我的 ViewController 中,我添加了这个:

UIFont *gnb = [UIFont fontWithName:@"gothamnarrowbook" size:22];

但是 gnb 是零。我究竟做错了什么?

4

1 回答 1

3

不幸的是,您在 .plist 中引用的字体的实际“名称”不一定与其文件名相同。

要查出字体的真名,在Font Book中打开,应该可以看到它的真名。也许实际名称是“Gotham Narrow Book”,或者类似的名称,Font Book 会告诉你。

查看此博客文章以了解更多信息。

另请注意:

使用 Font Book 中的名称对于具有一种变体的字体来说效果很好,但是如果您的字体有多种变体,并且您不想参与 iOS 看似不完整的 NSAttributedString 实现,那么您必须明确指定变体当你加载字体时。

使用 UIFont 的类方法 +fontNamesForFamilyName: 您提供字体系列名称,例如“Cloister Black”,它可能有两个变体“Light”和“Dark”,它将返回该字体所有变体的 NSArray,“CloisterBlack-Light ”和“修道院黑-暗”。注意没有空格。

于 2011-12-06T16:45:33.260 回答