【问题标题】:Adding multiple fonts to UIAppFonts overrides each other向 UIAppFonts 添加多种字体会相互覆盖
【发布时间】:2012-08-24 02:33:02
【问题描述】:

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

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

我的问题是 UIAppFonts 数组中的最后一个字体会覆盖另一个字体,如果这是 plist 数组中的最后一个条目,则 MyFont-Bold 和 MyFont-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]];

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

【问题讨论】:

    标签: iphone uifont


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-08-04
        • 1970-01-01
        • 1970-01-01
        • 2015-12-06
        • 1970-01-01
        • 2016-02-25
        • 2017-07-01
        相关资源
        最近更新 更多