0

我最近发布了为什么这个标签没有样式?,并且除了尝试解决问题之外,还解决了一些受到好评的问题,包括在 iPhone 应用程序中使用自定义字体等。

我所做的是:

  1. 安装Scurlock.TTF,将其安装在“支持文件”文件夹下。(注意:这是一个最好的近似值,因为上面引用的问题在其屏幕截图中显示了一个“资源”文件夹,并说一定要将字体放入“资源”文件夹。也许自发布以来情况发生了变化?)

  2. 编辑我的 info.plist 文件以添加:

    <key>Fonts provided by application</key>
    <array>
    <string>Scurlock.TTF</string>
    </array>
    
  3. 尝试通过以下方式访问 Scurlock:

    UIFont *font = [UIFont fontWithName:@"Scurlock" size:40];
    UIFont *font = [UIFont fontWithName:@"Scurlock.TTF" size:40];
    
  4. 运行根据为什么此标签显示为无样式?

    for (NSString* family in [UIFont familyNames])
    {
        NSLog(@"%@", family);
        for (NSString* name in [UIFont fontNamesForFamilyName: family])
            NSLog(@"  %@", name);
    }
    

    这给出了一长串字体,包括一个零,我怀疑它可能是一个腐败的家族,可能是一个腐败的 Scurlock。

我想检查字体(上面链接)是否损坏(Font Squirrel 从中生成 webfont.zip 几乎没有问题,这至少是一个健全的检查),或者是否推荐较早的文章——所有这些都比iOS 7——给出了一个过时的答案。

如何在 Xcode 5 和 iOS 7 中安装字体(除了在“支持文件”下列出之外的任何位置)?通知系统它的存在(例如定义 plist 的唯一“应用程序提供的字体”值),以及使用我的代码中的字体,或者做一些适用于我的系统和 iOS 7 的事情?

4

1 回答 1

1

您的 info.plist 应如下所示:

<key>UIAppFonts</key>
<array>
<string>Scurlock.TTF</string>
</array>

关键是UIAppFonts。如果您是说英语的用户,Xcode 会将其显示为“应用程序提供的字体”,但它不是正确的 info.plist 键。

于 2013-10-04T00:55:25.517 回答