【问题标题】:Using custom fonts in Cocos2d在 Cocos2d 中使用自定义字体
【发布时间】:2011-05-12 20:01:32
【问题描述】:

如何在我的 Cocos2d iPhone 应用程序中使用自定义 TTF 字体?

【问题讨论】:

  • 我已经完成了所有这些,但无法让它在设备上运行,只能在模拟器上运行!如何让它在设备上运行?
  • 我发布了一个问答,解决了在 cocos2d 中使用自定义字体时出现的大部分陷阱。如果您在向项目中添加自定义字体时遇到问题,请查看它。 (stackoverflow.com/questions/14508675/…)

标签: iphone fonts cocos2d-iphone


【解决方案1】:

由于这些答案已经过时,我相信我的问题/答案会帮助所有这些人。

Importing fonts for cocos2dx iOS

这适用于iOS和Android平台字体导入,只需一行代码!

【讨论】:

    【解决方案2】:

    在 Cocos2D 中,您可以在资源中包含字体文件,然后在 fontName 中:只需提供文件名。例如:

    CCLabelTTF *label = [CCLabelTTF labelWithString:@"whatever" fontName:@"FONTNAME.ttf" fontSize:18];
    

    这通常比 Hanaan 发布的方法更容易。

    您应该使用与文件名完全相同的文件名大小写。

    如果您只在 Cocos2D 位中使用它,则不需要将字体添加到 info.plist。

    如果像 Confused 一样,您发现该字体在模拟器上有效但在设备上无效,则可能是文件名大写错误。 iPhone 区分大小写,模拟器不区分。

    【讨论】:

    • cocos2d 2.0 中不是这样,CCLabelTTF 只会使用 UIFont 来解析它想要的字体。这需要将 TTF 添加到 Info.plist。
    • @bshirley,我在 cocos2d 2.0 中也遇到了同样的问题,告诉我在 plist 中添加 ttf 字体文件名的位置。
    • @Raj - 上面给出了答案。将 TTF 作为资源添加到项目中。将字体文件添加到 info.plist,键为 UIAppFonts,这是一个带有字符串值的数组(即“FooBar.ttf”)。确保在代码中使用 FONT NAME,而不是文件名。在 Mac OS 中选择并检查字体以收集文件中编码的实际字体名称。 (可能是“Foo Bar BOLD”)
    • @bshirley,不工作,先生。这是我的 ttf 文件 is.gd/9DHOpe 和 plist is.gd/DTaTfz 和代码 CCLabelTTF *gameOverLabel = [CCLabelTTF labelWithString:@"GAME OVER" fontName:@"Game Over Regular" fontSize:fntSize];
    • 并且game_over.ttf作为项目的资源包含进来?不知道你的问题。我会在调试器中将它追踪到 cocos2d 代码中,看看是否对您有帮助。
    【解决方案3】:

    我搜索了一段时间,并决定作为问答发布给想要实施的人。

    解决方法很简单。

    1. 找到您想要的字体并下载它们。 This website 拥有大量免费字体。

    2. 将字体文件添加到您的项目中。

    3. 以下面的数组为例,将字体名称添加到您的 info.plist 文件中。

    4. 查找字体名称;双击字体文件并使用窗口标题中显示的字体名称。在这个例子中是“动作人”

    按照您通常的方式使用字体名称:

    CCLabel* myLabel = [CCLabel labelWithString:@"Some Text" fontName:@"Action Man" fontSize:18];
    

    将此添加到您的 info.plist 文件中:

    <key>UIAppFonts</key>
    <array>
        <string>Action Man Bold.ttf</string>
        <string>AdineKirnberg-S.ttf</string>
    </array>
    

    【讨论】:

    • 为什么要把它做成 Cocos2D QA? UIAppFonts 在 iOS >= 3.2.2 的任何旧 iOS 应用程序中的工作方式相同
    • 我想补充一点,这种方法也适用于 .ttc :)
    猜你喜欢
    • 2012-07-24
    • 2014-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-27
    • 2014-11-05
    • 2012-05-16
    • 2013-10-21
    相关资源
    最近更新 更多