我参考了这个链接:在 Cocos2d 中使用自定义字体
这个链接:http ://captainjor.wordpress.com/2013/04/03/cocos2d-x-custom-ttf-font/
第一个链接有效,但我只能指定字体的系列名称(名称基于字体窗口的顶部)。如果我想要粗体或一些疯狂的屁股样式,当我打开其他样式字体(如 BoldItalic 或斜体)时,我无法明确指定,它仍然会返回姓氏。
第二个链接根本不起作用。
我在 Cocos2dx 中使用的代码有效:
CCLabelTTF *energyLabel = CCLabelTTF::create("ABCDEFGHIJKL", "Roboto", 60.0f);
这个没有:
CCLabelTTF *energyLabel = CCLabelTTF::create("ABCDEFGHIJKL", "Roboto Black Italic", 60.0f);
请注意,我已经仔细检查了 Info.plist 文件以导入所有必需的字体。有人有更多的解决方案吗?=/我很困惑。导入字体就是这样的 PITA。
编辑:我再次偶然发现了这个问题,但采用了不同的方法。只是想我会在这里发布一些关于我如何为 Android 和 iOS 进行字体导入的重要指示。请注意,这最适合支持使用一行代码导入字体。
- 首先,我将所有字体文件放在资源文件夹中(不在任何子文件夹中,只是在根目录中!)
- 特别是对于 iOS,您需要通过在 plist 中声明字体文件来导入它们。如何?像这样:
-> 是的,我们可以看到我以某种方式包含了“fonts/”子文件夹目录,即使字体位于资源的根文件夹中。这是这里最奇怪的部分,这应该是唯一棘手的事情。我尝试删除“fonts/”子文件夹目录引用,但当我尝试使用字体在我的应用程序中显示文本/标签时它不起作用
这是适用于 iOS 和 Android 的线路:
CCLabelTTF* levelLabel = CCLabelTTF::create("TextDisplayed", Roboto-BlackItalic.ttf, 12);
这行代码很大程度上依赖于这个事实:字体的 PostScript 名称需要与文件名完全相同。