Cocos2d-x v3.0正式版尝鲜体验【3】 Label文本标签

Cocos2d-x在新版本中加入了新的Label API,和以往不同的是,2.x的版本是通过三个不同的类来创建不同的文本标签,而现在是模仿着精灵的创建方式,一个类创建不同形式的文本,不过核心内容还是差不多的。

这是新的Label类结构图

在2.x的系列中,有三种文本,分别是TTF,BMFont和Atlas。在3.0中,将TTF拆分成两种,下面就分别看一下这四种文本的创建。

1.Label::createWithTTF

这是需要使用ttf格式字体文件的创建方式

TTFConfig config("fonts/Marker Felt.ttf", 25);

auto label1 = Label::createWithTTF(config, "Hello Cocos2d-x");
label1->setPosition(Point(size.width/2, size.height*0.8));
addChild(label1);

2.Label::createWithSystemFont

这是使用系统自带的字体进行创建,和原来2.x中的TTF类似

auto label2 = Label::createWithSystemFont("Hello Cocos2d-x", "Consolas", 25);
label2->setPosition(Point(size.width / 2, size.height*0.6));
addChild(label2);

注意第一个参数是需要显示的文本内容,第二个参数是系统字体

3.Label::createWithBMFont

通过静态字体文件创建文本的方式,生成fnt文件和对应的png图片

auto label3 = Label::createWithBMFont("fonts/helvetica-32.fnt", "Hello Cocos2d-x");
label3->setPosition(Point(size.width / 2, size.height*0.4));
addChild(label3);

4.Label::createWithCharMap

这个是和2.x中Atlas形式创建对应的。不过这种有两种形式匹配图片中的文字,一种是直接设置每一块字体的宽高数值获取,另一种是通过fnt文件的方式,但原理都是一样的。

auto label4 = Label::createWithCharMap("fonts/tuffy_bold_italic-charmap.plist");
label4->setPosition(Point(size.width / 2, size.height*0.2));
addChild(label4);
label4->setString("Cocos2d-x");

auto label4 = Label::createWithCharMap("fonts/tuffy_bold_italic-charmap.png", 48, 66, ‘ ‘);
label4->setPosition(Point(size.width / 2, size.height*0.2));
addChild(label4);
label4->setString("Cocos2d-x");

以上四种形式创建出来的文本效果如图。

此外,在create函数的其他重载形式中,还有一些关于对齐方式的参数,这里就不介绍了,除了写法形式和原来不同,其表现结果都是一样的。

Cocos2d-x v3.0正式版尝鲜体验【3】 Label文本标签,布布扣,bubuko.com

时间: 2024-10-05 04:19:12

Cocos2d-x v3.0正式版尝鲜体验【3】 Label文本标签的相关文章

Cocos2d-x v3.0正式版尝鲜体验【2】 Android平台移植

今天没事又尝试了下3.0正式版关于Android平台的移植,把新建的项目移植了下.过程仅用了十分钟左右,什么概念?! 好吧,事实上我想说,这个版本号真的移植非常轻松啊,只是还没加上其它东西,只是就眼下来说,真的非常方便.心理算是平衡些了,由于写代码总是想着要把CC去掉... 话不多说,来看看怎么移植到Android平台吧.体会下什么叫方便. 首先须要Android的NDK,SDK,Eclipse啥啥的就不提了.这些有过移植经验的就不多说了,关于NDK,最好去官网下载最新的版本号. 假设有自己新建

Cocos2d-x v3.0 正式版 如何创建一个项目,TestCpp执行

欢迎增加 Cocos2d-x 交流群: 193411763 转载请注明原文出处:http://blog.csdn.net/u012945598/article/details/24456579 首先到Cocos2d-x 官网下载 Cocos2d-x-3.0版本号文件(www.cocos2d-x.org) 下载完毕后将Cocos2d-x-3.0解压到桌面,创建项目的方法按例如以下步骤操作 打开终端,依照下图方法输入: 第一步:进入到桌面/cocos2d-x-3.0目录下 第二步:创建一个新的pro

Qt5.9.0正式版动态编译 (VS2017) 支持WebEngine 、 ICU 、OpenSSL

尝鲜体验 Qt5.9.0 正式版 动态编译 (VS2017) 支持WebEngine . ICU . OpenSSL模块 此版本只有Release库:具有开发文档: QtLib_VC-x86-shared.7z:http://pan.baidu.com/s/1o8pzeZ4QtLib_VC-x64-shared.7z:http://pan.baidu.com/s/1miHT0kK Release与Debug:32位:http://pan.baidu.com/s/1bpxnem764位:http:

.NET Core 2.0和ASP.NET Core 2.0正式版抢先体验

.NET Standard 2.0 is final Broad platform support. .NET Standard 2.0 is supported on the following platforms: .NET Framework 4.6.1 .NET Core 2.0 Mono 5.4 Xamarin.iOS 10.14 Xamarin.Mac 3.8 Xamarin.Android 7.5 UWP is work in progress and will ship late

cocos2d-x笔记3 : 3.0正式版调用CocoStudio

cocos2d已经有一万个新建工程的方式和一万个API改动了,而且相互不兼容...触控科技的程序员真心不怕被打哦... 网上搜到的做法大多已经不行了,原因在上一段哦... 同样都是3.0,Alpha版.Bata版.Rc版.正式版,它们调用CocoStudio的方法都不一样哦...(求超越哦...) 记录一下3.0正式版使用CocoStudio的方法,是正式版,也就是最新版哦.(当然,只相对本周而言哦...) 一.添加库: 1.右击解决方案 -> 添加 -> 现有项目 2.进入项目目录的coco

Ubuntu14.04+eclipse下cocos2d-x3.0正式版环境的搭建

环境: ubuntu14.04 adt-bundle-linux-x86_64 android-ndk-r9d-linux-x86_64 cocos2d-x-3.0正式版 apache-ant 1.9.3 python 2.7(ubuntu自带) 加入环境变量 export ANDROID_SDK_ROOT=/home/yangming/adt-bundle-linux/sdk export PATH=${PATH}:/$ANDROID_SDK_ROOT/tools/ export PATH=$

Appium路线图及1.0正式版发布

Appium更新的速度极快,从我试用时候的0.12到1.0beta(0.18版本后就是1.0),完全符合移动互联网的节奏. 整理了testerhome上思寒发表的帖子,让我们来看下历程. 1. appium1.0 beta 和正式版里程碑 appium1.0 beta版本里程碑的issue列表https://github.com/appium/appium/issues?milestone=1&state=open appium1.0正式版本里程碑https://github.com/appiu

ThinkPHP V5.0 正式版发布

ThinkPHP5.0 正式版的发布,是团队中秋节送给PHP开发者最好的礼物!祝大家中秋快乐,事业顺利,用ThinkPHP开发更健康^_^ ThinkPHP5.0版本是一个颠覆和重构版本,官方团队历时十月,倾注了大量的时间和精力,采用全新的架构思想,引入了更多的PHP新特性,优化了核心,减少了依赖,实现了真正的惰性加载,支持composer,并针对API开发做了大量的优化,包括路由.日志.异常.模型.数据库.模板引擎和验证等模块都已经重构(基础教程qkxue.net),不适合原有3.2项目的升级

C#电子元件管理系统V1.0正式版

这次刚好有时间,就干脆把电子元件管理系统的v1.0正式版给大家贴出来吧,此次改动在以前的基础上添加了用户管理,以及对界面进行了大量美化.废话就不多说了,直接上图,上源码,欢迎大家参考和指正.