此代码有效:
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的最新版本。
任何人都可以帮我这个吗?我的代码有什么问题以及如何修复它们? 谢谢你的帮助!
答案 0 :(得分:2)
我在添加自定义字体时遇到了很多困难。我知道问题已经得到解答,但我只是想分享一下为我解决问题的方法。 以下是确保使用自定义字体所需的要点:
字体名称必须与该字体的PostScript名称匹配(您可以使用字体书轻松找到postscript名称,只需选择字体并按下命令+ i),因此您的字体名称应为:PostScriptName.ttf
在项目的Info.plist中,确保在"应用程序"提供的字体下添加字体名称,只需输入item0的字体名称和扩展名或任何长度你的字体堆栈是:PostScriptName.ttf, 现在,为我解决问题的下一步是:
确保字体文件存在于"复制包资源" '构建阶段'项目的设置。对我来说,它不知道那里,这就是为什么字体没有加载,所以我只是手动添加它。
现在您甚至可以使用LabelTTF :: create(" Text"," PostScriptName",24)!
答案 1 :(得分:1)
在Cocos2d-x V3中,有一个新类Label
。
我试过这个并且有效:
Label *label = Label::createWithTTF("Your string here","cocacolaii.ttf", 170);
有关详情,请参阅this