CCLabel 文字显示乱码或者显示不全bug修改方法

不知道新版本改没有改,3.5以下肯定都有这个问题,看到论坛好多人在问,都没有人解答,我遇到这个问题的时候也找了两天。
1:这个可能是字符编码问题,如果字符编码已经正确了。
2:还有个问题就是使用TTF字体导致的,即CCLabel的实现有bug,在缓存纹理超过512*512大小的时候,新开辟字符缓存的时候会出问题,这时需要修改CCLabel.cpp源码
在Label::alignText函数的auto textures = _fontAtlas->getTextures();这行代码下面添加以下代码:
for (auto index = 0; index < _batchNodes.size() && index < textures.size(); ++index)
{
auto batchNode = _batchNodes;
batchNode->setTexture(textures.at(index));
}
就没有问题了。

顺带一提就是,低版本的CCLabel使用阴影的enableOutline使用了blurRadius那个默认参数的时候会导致特别卡,具体是因为他使用了setColor这个及其低效的函数,可以把那个参数传一个大于0的值,或者参照新版本改下代码就不会卡了。

你的问题是文本出现裂图 和缺字吗?