首页 > 代码库 > iOS_31_cocos2d_Label
iOS_31_cocos2d_Label
最终效果图:
cocos2d v3中Label只有2种:
一、CCLabelTTF
注意事项:
CCLabelTTF,可以随时setString,改变文字,
但是:非常耗性能,
因为,它会为每一个新的string,创建一个新的纹理,进行渲染,
因此,不能频繁地改变文字的内容;
只有显示固定的文字时,才建议使用CCLabelTTF
二、CCLabelBMFont
使用注意事项:
BMFont是专门为了频繁更换label内容而生,
因为,每一个字符如a、b、1都是一个sprite,
都对应着一个图片/纹理,
因此会以占用更多的内存为代价,
从而提高了渲染的效率(因为一个sprite对应的纹理只需渲染一次)
另外一个好处是:
由于每一个字符都是一个精灵,所以可以runAction
这里面用到的fnt可以使用【Glyph Designer软件】生成
BMFont不能设置大小size,但是可以通过设置scale缩放
并且,BMFont不能设置高度,仅能设置宽度
CCLabelBMFont需要用到的软件:
Glyph Designer (类似的工具还有Hiero)
glyph n.象形文字,象形符号
软件默认打开界面:
使用了抗锯齿、径向填充(Gradient Fill Glyph)
实心填充(solid fill)
一般情况下:
会先用小字号(如64)生成一个非视网膜屏幕下的图片,如a.png
再用大字号(如128)生成视网膜屏幕下的图片,如a-hd.png
视网膜屏幕下用的a-hd.png,字号大小是上面的2倍,为128
点击【Export】,生成cocos2d使用的fnt文件
此时,在Documents路径下会生成2个文件
.fnt和.png
其中.fnt就是对图片的描述文件,描述每一个字符char在图片中的位置等信息
用文件编辑器打开.fnt,可以看到该文件描述的File是"Marion.png"
在cocos2d v3中,Atlas已经不再使用,这仍简单介绍一下
Atlas 使用的是plist文件,
它要求图片里面每一个char要有相同的宽度和高度,并且按ascii顺序排列 ,
因为Atlas就是根据ascii值到Plist中去截取对应位置的对应size的图片,作为文字使用
Atlas适合于 像高速地动态地显示少数的几个数字,如左下角的帧率(只有0~9),这样的文字(字符)
iOS_31_cocos2d_Label
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。