Cocos2d - 32点字体图集显示为乱码

时间:2012-01-06 15:06:13

标签: fonts cocos2d-iphone

我正在尝试使用字体图集(使用字形编辑器创建)获得32磅字体,以显示在我的游戏中。对字体的调用如下:

CCLabelBMFont *scoreSprite = [CCLabelBMFont labelWithString:[NSString stringWithFormat:@"-"] fntFile:@"press_start_2p_lg.fnt"];

然而,当游戏中显示该标签时,字体显示完全错误:它基本上只显示某些角色的部分,从我所知道的。我有其他尺寸较小的地图集(8-16点)。如果我用其中一个替换有问题的fntFile声明,它就可以正常工作。

我在程序的其他地方也有其他标签可用,除非我尝试给它们“press_start_2p_lg.fnt”字体文件。我已经尝试在Glyph Editor和Hiero中重新创建地图集,我甚至改变了地图集中的字体,以确保整个事物都被重新创建,所有这一切都没有运气。有什么我想念的吗?

1 个答案:

答案 0 :(得分:0)

如果模拟器或设备上未显示更改,请尝试先从模拟器或设备中删除应用程序。还可以尝试使用Clean构建来确保应用程序中包含所有内容。

要注意的其他事项是,如果您尝试使用非ASCII字符。 Cocos2D默认允许2048个字符,这对于Unicode字符来说是不够的。

您可能还想在文本编辑器中打开.fnt文件,看看是否可以找到任何明显的问题,例如引用错误的.png文件。

我也想知道你为什么要使用NSString stringWithFormat。上面的代码行与此代码完全相同:

CCLabelBMFont *scoreSprite = [CCLabelBMFont labelWithString:@"-" fntFile:@"press_start_2p_lg.fnt"];