无法在Cocos2d-x项目中使用自定义字体

时间:2014-07-10 11:08:53

标签: c++ ios xcode xcode5 cocos2d-x

此代码有效:

auto label = LabelTTF::create(CokeStore::name, "Marker Felt", 170);

但这些都不起作用:

auto label = LabelTTF::create(CokeStore::name, "Coca Cola ii", 170);

auto label = LabelTTF::create(CokeStore::name, "CocaColaii", 170);

auto label = LabelTTF::create(CokeStore::name, "cocacolaii", 170);

我将所有字体作为资源导入到我的项目中并添加了字体'进入Fonts provided by application Info.plist的路径。我使用的是Cocos2d-x v. 3,这是Github的最新版本。

任何人都可以帮我这个吗?我的代码有什么问题以及如何修复它们? 谢谢你的帮助!

2 个答案:

答案 0 :(得分:2)

我在添加自定义字体时遇到了很多困难。我知道问题已经得到解答,但我只是想分享一下为我解决问题的方法。 以下是确保使用自定义字体所需的要点:

  1. 字体名称必须与该字体的PostScript名称匹配(您可以使用字体书轻松找到postscript名称,只需选择字体并按下命令+ i),因此您的字体名称应为:PostScriptName.ttf

  2. 在项目的Info.plist中,确保在"应用程序"提供的字体下添加字体名称,只需输入item0的字体名称和扩展名或任何长度你的字体堆栈是:PostScriptName.ttf, 现在,为我解决问题的下一步是:

  3. 确保字体文件存在于"复制包资源" '构建阶段'项目的设置。对我来说,它不知道那里,这就是为什么字体没有加载,所以我只是手动添加它。

  4. 现在您甚至可以使用LabelTTF :: create(" Text"," PostScriptName",24)!

答案 1 :(得分:1)

在Cocos2d-x V3中,有一个新类Label

我试过这个并且有效:

Label *label = Label::createWithTTF("Your string here","cocacolaii.ttf", 170);

有关详情,请参阅this