CCLabel字体与文本

CCLabel字体与文本

Cocos2d-x中提供了3种文本,分别是CCLabelTTF,CCLabelAtlas,CCLabelBMFont。

1.CCLabelTTF

  1.1 CCLabelTTF :: create();

无参创建方式,默认的字体类型是:Helvetica。可以使用setString(const char* str)添加显示内容。

  1.2 CClabelTTF:: create(const char*content. const char* fontName , float fontSize)

参数:需要显示的字符串;

参数:字体的名称,一般为ttf的文件,无需添加.ttf;

参数:字体的大小。

  举例:

 CCLabelTTF *label = CCLabelTTF :: create(“Hello!” , “fonts/A Damn Mess” , 20);

  //CCLableTTF对象使用了位于Resource/fonts文件夹下的A Damn Mess.ttf字体文件

 this->addChild(label);

 

2.CCLabelBMFont

 CCLabelBMFont :: create(const char* content , const char* fntName);

  参数:显示的字体内容;

  参数:fnt字体资源文件名称。

  举例:

 CCLableBMFont *label = CCLabelBMFont :: create(“hello” , “fonts/boundsTestFont.fnt”);

  需要注意的是,要显示的文字必须是在fnt字体资源文件中可以定位到的,否则会出现错误。

 

3.CCLabelAtlas

  3.1 CCLabelAtlas :: create(const char*content , const char* plistName);

参数:要显示的内容;

参数:plist文件名称。

举例:

CCLabelAtlas*label =

            CCLabelAtlas : :create(“HELLO” , “fonts/tuffy_bold_italic-charmap.plist”);

需要注意的是,显示内容需要是plist文件中存在的字体内容,严格要求大小写,否则会报错。

  3.2 CCLabelAtlas :: create(const char*content , const char* pngName , int width , int height, unsigned intstartCharMap);

  参数:显示的内容;

  参数:文字图片资源名称;

  参数:每个文字的宽;

  参数:每个文字的高;

  参数:字体起始表示。

  举例:

 CCLabelAtlas *label = CCLabelAtlas :: create(“你好” , “bitmapFontChinese.png” , 23,23 , 1);

 

【说明】

CCLabelTTF继承自CCSprite与CCLableProtocol两个类,字体的显示是靠Texture2D(2D纹理)绘制的,每次调用setString改变显示字符串内容的时候,一个新的OpenGL纹理将会被创建,这就意味着setString与创建一个新的CCLabelTTF一样慢。

所以在开发中,对那些需要频繁更新内容的文本,一般不使用CCLabelTTF,而是使用CCLableAtlas或者CCLabelBMFont。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值