RLH*_*RLH 11 fonts cocos2d-iphone ios cclabelttf
我需要在我的Cocos2D项目中使用自定义字体.我尝试了一些技巧,但Cocos2D不断报道:
无法加载字体XXX.ttf
为什么我不能使用Cocos2D使用自定义字体?
这是一个问题+答案的帖子.这是一个让我整个早上都撞在墙上的问题.在阅读了众多网站的众多解决方案之后,我发现所有可用解决方案的合并都是解决这个问题的必要条件.
对某些人来说进一步困扰的是,你有时可以让你的应用程序在模拟器中完美地工作,但它不适用于你的iOS设备!此外,我还阅读了一些用户遇到相反问题的情况,其中设备将正常工作,而不是模拟器.我没有遇到后一个问题,但我相信遵循这些说明将有助于解决这个问题.
如果您遇到此问题,请自行解决,我错过了一步,请发表评论.我会更新我的帖子以包含任何其他详细信息.
RLH*_*RLH 36
以下是在项目中添加字体时应遵循的必要步骤.
将新的自定义字体安装到Font Book中.我假设你知道如何做到这一点,我将把这一步的进一步解释留给谷歌.
接下来,从Font Book中,找到刚安装的字体.选择字体,然后单击"字体簿"工具栏上的" 信息"按钮.
请注意PostScript name
酒店.这必须是应用程序中字体文件的名称(不包括字体文件扩展名).
注意: 我读过一些用户在使用名称包含空格的自定义字体时遇到问题.我不确定这只是用户的错误,因为我不确定PostScript名称是否甚至可以包含空格.无论如何,如果您的PostScript名称包含空格,您仍可能无法访问您的字体.
如果这是您的问题,您可能想知道是否可以获得一个工具,可以让您更改字体的PostScript名称属性.在将文件添加到XCode项目之前,您需要执行此操作.否则,我认为您的自定义字体将在模拟器中运行,但不会在您的iOS设备上运行.
打开您的XCode项目,将您的字体从Finder拖放到项目资源文件夹中.在单击"添加文件"屏幕上的"完成"按钮之前,请务必选中复选框以将字体复制到目标组的文件夹.
将字体添加到资源文件夹后.验证字体的名称是否与步骤3中提到的PostScript名称相同.名称还必须包含任何特殊字符,如连字符或下划线.
如果您的字体的名称与PostScript名称不同(不包括文件扩展名),您将无法从iOS设备访问此字体,因此请重命名项目中的文件.在我的示例字体的情况下,我需要将NES.ttf重命名为Nintendo-NES-Font.ttf
接下来,打开项目的info.plist
文件.在plist designer屏幕中,右键单击plist的第一行,然后选择Add Row.这将打开一个关键选择框.选择"应用程序提供的字体"数组选项.
plist中的新数组将自动添加一个空的"Item 0".将字符串属性设置为您的字体文件的名称.在我的示例中,属性值应为Nintendo-NES-Font.ttf.
接下来,转到XCode项目的Build Phases屏幕.从此处,验证您的字体文件是否位于" 复制包资源"组列表中.如果不是,请在项目目录中添加该文件.
而已!您的字体现在位于项目中,可供CClabelTTF
标签使用.请记住,在创建标签时,请按PostScript名称指定字体.您不必包含".ttf"文件扩展名.下面的示例代码显示了如何使用自定义字体创建标签.
CCLabelTTF* label = [CCLabelTTF labelWithString:@"Your label text here."
fontName:@"Nintendo-NES-Font"
fontSize:16];
Run Code Online (Sandbox Code Playgroud)
将标签作为子项添加到图层,它将使用您的自定义字体显示!
而且,这是我们的结果:
归档时间: |
|
查看次数: |
6131 次 |
最近记录: |