此代码有效:
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);
我将所有字体作为资源导入到我的项目中,并将字体路径添加到 Info.plist
的 Fonts provided by application
中。我使用的是 Cocos2d-x v.3
,这是 Github 的最新版本。
有人可以帮我解决这个问题吗?我的代码有什么问题以及如何修复它们吗? 感谢您的帮助!
最佳答案
我在添加自定义字体时遇到了很多困难。我知道问题已经得到解答,但我只想分享为我解决问题的方法。 这些是您需要确保使用自定义字体的要点:
字体名称必须与该字体的 PostScript 名称匹配(您可以使用字体簿轻松找到 postscript 名称,只需选择字体并按 command+i),因此您的字体名称应为:PostScriptName.ttf
在项目的 Info.plist 中,确保在“应用程序提供的字体”下添加字体名称,只需输入 item0 的字体名称和扩展名或任何字体堆栈的长度: PostScriptName.ttf, 现在,为我解决问题的下一步是:
确保字体文件存在于项目“构建阶段”设置的“复制捆绑资源”部分中。对我来说它不存在,这就是为什么字体没有加载,所以我只是手动添加它。
现在您甚至可以使用 LabelTTF::create("Text", "PostScriptName", 24)!
关于c++ - 无法在 Cocos2d-x 项目中使用自定义字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24674977/