在Cocos2d-x的lua-tests里,展示了3种Label的使用,分别是cc.LabelAtlas,cc.LabelBMFont和cc.LabelTTF,通过上网搜索资料,总结一下它们的特点,以方便日后的选取和使用。
新版本是指3.0以后的版本,改动的目的应该是使得可以通过同一个Label类来创建不同类型的Label,统一创建入口
1,旧版本cc.LabelAtlas,新版本cc.Label:createWithCharMap,特点:
1,需要一个图片文件,图片文件中的字符应当以ASCII的顺序排列,且每个字符的宽度和高度都应该相同,在代码中需要给定字符宽度,高度以及起始字符,之后系统便认为图片文件中的字符是从起始字符开始,并按照ASCII的顺序往后排列的
2,从上可以看出,它适合数字和英文字符,相对cc.LabelBMFont轻量
2,旧版本cc.LabelBMFont,新版本cc.Label:createWithBMFont,特点:
1,可以把每一个字符当作一个sprite,这意味着每一个字符都可以有自己的操作(如动作等)
2,需要一个图片文件和字符坐标文件
3,可以有比较丰富和绚丽的效果,同时会耗费更多的内存
3,旧版本cc.LabelTTF,新版本cc.Label:createWithTTF(需要自己给定ttf字体文件)和cc.Label:createWithSystemFont(使用系统自带的字体),特点:
1,不适合频繁更新文本的情形
2,适合显示汉字
3,相对于cc.LabelAtlas和cc.LabelBMFont渲染速度较慢
大概了解一下这3个Label各自的特点,可以帮助我们在适合的情形下选取适合的Label来使用,至于具体怎么使用,可以参考自带的例子和api文档。