6

我正在尝试通过UIAppFontsin向 iPhone 应用程序添加一些自定义字体Info.plist

我可以通过代码访问这两个字体名称,即MyFont-BoldMyFont-Medium.

我的问题是UIAppFonts数组中的最后一个字体会覆盖另一个字体,如果这是 plist 数组中的最后一个条目,则同时生成MyFont-BoldMyFont-Medium渲染出来。MyFont-Bold通过拖动MyFont-Bold作为第一个条目使两个字体名称呈现 MyFont-Medium。

物业清单摘录:

UIAppFonts
  item 0    MyFont-Medium
  item 1    MyFont-Bold

我用以下方式调用字体:

UIFont* applicationFontBold = [UIFont fontWithName:@"MyFont-Bold"
                                              size:[UIFont buttonFontSize]];

UIFont* applicationFont = [UIFont fontWithName:@"MyFont-Medium"
                                          size:[UIFont buttonFontSize]];

有人尝试将多种字体添加到一个字体系列吗?

4

2 回答 2

4

不知道它是否已修复,但我通过使用 vim 编辑器实际修改 .ttf 文件中的字体系列名称来解决此问题。因为您有不同的字体类型(粗体和中等)但实际上是相同的字体系列(MyFont) - 系统将它们混合在一起。所以我在第一个文件中所做的 - 我实际上将系列修改为 MyFontA,在第二个文件中修改为 MyFontB(当然我有不同的名称 - 这些只是为了匹配上面的示例)。这很完美。

于 2011-04-22T09:43:56.280 回答
0

对于同一字体系列的多种字体,我遇到了类似的问题。我发现如果我将 info.plist 文件作为源代码查看,则 xml 格式不正确,这会导致仅注册某些字体。

于 2012-08-23T18:33:02.850 回答