无法在Cocos2d-x项目中使用自定义字体
Cannot use custom font in Cocos2d-x project
代码正常运行:
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名称使用字体本,只需选择字体并按命令+i),所以你的字体名称应该是:PostScriptName.ttf
-
在Info。你的项目的plist,确保添加字体名称下的"字体提供的应用程序",只要把字体名称和扩展名item0或你的字体堆栈的长度是:PostScriptName.ttf,现在,为我解决这个问题的下一步是:
-
确保字体文件存在于项目的"Build Phases"设置的"Copy Bundle Resources"部分中。对我来说,它不存在,这就是为什么字体没有加载,所以我只是手动添加它。
-
现在你甚至可以使用LabelTTF::create("Text", "PostScriptName", 24)!
在Cocos2d-x V3中,有一个新的类Label
。
我试了一下,它工作了:
Label *label = Label::createWithTTF("Your string here","cocacolaii.ttf", 170);
有关详细信息,请阅读
- C++映射:具有自定义类的运算符[]不起作用(总是返回0)
- 如何将点击的信号和插槽添加到qt中的自定义按钮中
- C++自定义比较函数
- 如何比较自定义类的std::变体
- std::设置自定义比较器
- 如何正确实现和访问运算符的各种自定义枚举器
- flutter:即使shouldRepaint()返回true,自定义画家也不会重新绘制
- 自定义先决条件对移动分配运算符有效吗
- 使用VS Code和CMake Tools运行自定义命令
- 如何创建从Maya(或类似程序)到虚幻引擎的自定义数据导出插件
- std::ranges::elements_view,用于自定义类似元组的数据
- 跟随整数索引列表的自定义类迭代器
- SetCurrentConsoleFontEx() 不适用于自定义安装的字体
- 如何加载自定义字体,以便我可以在 DirectX 中使用它们
- 在linux上安装自定义字体(相当于windows AddFontResource)
- 无法在Cocos2d-x项目中使用自定义字体
- 如何在cocos2d-x中添加自定义字体?
- 在iOS的cocos2d-x v3中使用自定义字体
- Qt- 从资源添加自定义字体
- 自定义字体在应用程序