我需要在我的Cocos2D项目中使用自定义字体.我尝试了一些技巧,但Cocos2D不断报道:
无法加载字体XXX.ttf
为什么我不能使用Cocos2D使用自定义字体?
这是一个问题+答案的帖子.这是一个让我整个早上都撞在墙上的问题.在阅读了众多网站的众多解决方案之后,我发现所有可用解决方案的合并都是解决这个问题的必要条件.
对某些人来说进一步困扰的是,你有时可以让你的应用程序在模拟器中完美地工作,但它不适用于你的iOS设备!此外,我还阅读了一些用户遇到相反问题的情况,其中设备将正常工作,而不是模拟器.我没有遇到后一个问题,但我相信遵循这些说明将有助于解决这个问题.
如果您遇到此问题,请自行解决,我错过了一步,请发表评论.我会更新我的帖子以包含任何其他详细信息.
我已经提到过这个链接:在Cocos2d中使用自定义字体
这个链接:http://captainjor.wordpress.com/2013/04/03/cocos2d-x-custom-ttf-font/
第一个链接有效,但我只能指定字体的系列名称(基于字体窗口顶部的名称).如果我想要Bold,或者一些疯狂的屁股造型,我无法明确指定,因为我打开了其他样式字体,如BoldItalic或Italic,它仍然返回我的姓氏.
第二个链接根本不起作用.
我在Cocos2dx中使用的代码有效:
CCLabelTTF *energyLabel = CCLabelTTF::create("ABCDEFGHIJKL", "Roboto", 60.0f);
Run Code Online (Sandbox Code Playgroud)
这个没有:
CCLabelTTF *energyLabel = CCLabelTTF::create("ABCDEFGHIJKL", "Roboto Black Italic", 60.0f);
Run Code Online (Sandbox Code Playgroud)
请注意,我已经在Info.plist文件中双重检查以导入所有必需的字体.任何人有更多的解决方案?= /我很难过.导入字体就是这样的PITA.
编辑:我在这个问题上再次跌跌撞撞,但采用了不同的方法.我想我会在这里发布一些关于如何为Android和iOS完全进行字体导入的重要指示.请注意,这最适合支持使用一行代码导入字体.

- >是的我们可以看到我已经以某种方式包含了"fonts /"子文件夹目录,即使这些字体位于参考资料中的ROOT文件夹中.这是最奇怪的部分,这应该是唯一棘手的事情.我尝试删除"fonts /"子文件夹目录引用,当我尝试使用字体在我的应用程序中显示文本/标签时,它不起作用
这是适用于iOS和Android的产品线:
CCLabelTTF* levelLabel = CCLabelTTF::create("TextDisplayed", Roboto-BlackItalic.ttf, 12);
Run Code Online (Sandbox Code Playgroud)
这行代码严重依赖于这一事实:字体的PostScript名称需要与文件名完全相同.