要看图片到:http://blog.sina.com.cn/s/blog_82ca0a77010111xt.html
CCLabelAtlas、CCLabelBMFont、CCLabelTTF。
该函数会得到当前label使用的字体名称及当前字体大小信息。
2、static CCLabelTTF *labelWithString(const char *label, const char *fontName, floatfontSize);
这是一个静态初始化函数,该方法返回一个CCLabelTTF对象指针。
参数含义: label:需要显示的字符串,fontName:使用字体名称,fontSize:设置字体大小
附上cocos2d字体列表:http://blog.sina.com.cn/s/blog_82ca0a7701011271.html
3、bool initWithString(const char *label, const char *fontName,float fontSize);
初始化label,参数含义与上一个函数相同。这一函数与上一函数的区别为:本函数不是静态函数,也就是说你必须实例化一个CCLabelTTF对象之后才能调用本函数。
4、virtual void setString(const char *label);
可以看到这是个虚函数,继承自CCLabelProtocol类。本函数的作用就是改变当前label显示的字符串。
5、virtual const char* getString(void);
这也是一个继承自CCLabelProtocol的虚函数,功能为得到当前label显示的字符串。
1、static voidpurgeCachedData();
2、static CCLabelBMFont * labelWithString(const char *str, constchar *fntFile);
需要提供的参数信息为: (const char *)str:要显示的字符串,(const char*)fntFile:字体坐标文件
说明:字体坐标文件,与其对应的是一个同名的png文件,里面保存了字体样本,显示的时候就是通过fnt坐标文件从png里面选择字符并显示,如图
图1 bitmapFontChinese.fnt部分内容
至于其具体工作原理就不深究了,这里只要知道使用方法就行。
3、bool initWithString(const char *str, const char *fntFile);
4、virtual void setString(const char *label);
这两个函数同样是继承自CCLabelProtocol的函数。作用就不多说了。
三、最后是CCLabelAtlas,这个比较复杂,所以放在最后讲
1、static CCLabelAtlas * labelWithString(const char *label, constchar *charMapFile,
unsigned int itemWidth, unsigned int itemHeight,unsigned char startCharMap);
参数含义: (const char *)label:当然是要显示的字符串了,(const char*)charMapFile:上面所说的字体图片
(unsigned int)itemWidth、itemHeight:字符的尺寸,也就是宽和高,这个必须根据你的字体图片来给出值
(unsignedchar)startCharMap:从哪个字符开始,一般是字体图片的第一个字符
2、bool initWithString(const char *label, const char*charMapFile,
unsigned int itemWidth, unsigned int itemHeight,unsigned char startCharMap);
3、virtual void setString(const char *label);
这两个函数在三种字体类中都一样,都是继承自CCLabelProtocol。详见CCLabelTTF中的描述
1、项目需要,所以看了看字体相关的东西,可能还很浅显,有错的地方希望大家给予指正。
3、本文只是给出一般接口及参数的介绍,如果想深入了解其继承关系或三种方式的工作效率