Cocos2d-x v3.0正式版尝鲜体验【3】 Label文本标签
Cocos2d-x在新版本号中增加了新的Label API。和以往不同的是,2.x的版本号是通过三个不同的类来创建不同的文本标签,而如今是模仿着精灵的创建方式。一个类创建不同形式的文本,只是核心内容还是差点儿相同的。
这是新的Label类结构图
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdzMzNzE5ODMwMg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
在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");
以上四种形式创建出来的文本效果如图。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdzMzNzE5ODMwMg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
此外。在create函数的其它重载形式中,另一些关于对齐方式的參数,这里就不介绍了。除了写法形式和原来不同,其表现结果都是一样的。
Cocos2d-x v3.0正式版尝鲜体验【3】 Label文本标签的更多相关文章
- Cocos2d-x v3.0正式版尝鲜体验【2】 Android平台移植
今天没事又尝试了下3.0正式版关于Android平台的移植,把新建的项目移植了下.过程仅用了十分钟左右,什么概念?! 好吧,事实上我想说,这个版本号真的移植非常轻松啊,只是还没加上其它东西,只是就眼下 ...
- Cocos2d-x v3.0正式版尝鲜体验【1】 环境搭建和新建项目
Cocos2d-x v3.0在前天最终公布正式版了,等了大半年最终出来了.一直没去碰之前的3.0各种beta,rc版本号,就想等正式版出来再尝试. 昨天也參加了触控科技在成都举办的沙龙活动.看到作者王 ...
- React Suite v3.0 正式版发布
React Suite v3.0 正式版发布 相信很多人会好奇,React Suite 是什么? React Suite 是 HYPERS 前端团队和 UX 团队开源的一套基于 React 的 UI ...
- Cocos2d-x v3.0 正式版 如何创建一个项目,TestCpp执行
欢迎增加 Cocos2d-x 交流群: 193411763 转载请注明原文出处:http://blog.csdn.net/u012945598/article/details/24456579 首先到 ...
- Flutter 1.0 正式版: Google 的便携 UI 工具包
Flutter 1.0 正式版: Google 的便携 UI 工具包 文 / Tim Sneath,Google Dart & Flutter 产品组产品经理 Flutter 是 Google ...
- Flutter 1.0 正式版: Google 的跨平台 UI 工具包
今天我们非常高兴的宣布,Flutter 的 1.0 版本正式发布!Flutter 是 Google 为您打造的 UI 工具包,帮助您通过一套代码同时在 iOS 和 Android 上构建媲美原生体验的 ...
- 【6年开源路】海王星给你好看!FineUI v4.0正式版暨《FineUI3to4一键升级工具》发布!
去年10-28号,我发布了一篇文章<海王星给你好看!FineUI v4.0公测版发布暨<你找BUG我送书>活动开始>,标志着FineUI开始向4.0版本迈进.经过4个月3个公测 ...
- (Mac OS平台)升级.NetCore1.0正式版小记
昨天终于发布了.NetCore1.0正式版.昨晚回去就顺手把手里的一个.NetCore项目升级了一下.还是遇到了一些问题,这里记录下吧. 1.Restore问题 这个问题一直都有,一直放那没去解决.主 ...
- .NET Core 2.0和ASP.NET Core 2.0正式版抢先体验
.NET Core 2.0和ASP.NET Core 2.0正式版抢先体验 .NET Standard 2.0 is final Broad platform support. .NET Standa ...
随机推荐
- 当向计算机中存入一个float类型的数值2.2 后,在从计算机中读出输出,这时2.2 的值已经发生了变化(转)
problom : 'f1' value hava been changed when output. reason : the binary repersentation of 2.2f is : ...
- perl 获取文件内容里第一个AAA和最后一个AAA
<pre name="code" class="html">[root@wx03 ~]# cat -n aaa 1 3`13 2 edqae 3 d ...
- 【图像识别】 图像处理和图像分析(leptonica)leptonica-1.68安装配置 (vs2008)
Leptonica Leptonica is a pedagogically-oriented open source site containing software that is broadly ...
- Java批量生成Mac地址到文件
public class Main { public static void main(String[] args) { // 生成文件名称 String filePath = "mac.t ...
- Swift - 实现点击UITableView单元格时自动展开单元格
下面是一个列表单元格cell的折叠展开效果的demo.当点击单元格时会展开该单元格,便于显示一些详情什么的.点击其他单元格原来的会关闭,同时有动画效果. 效果如如下: 代码如下: 1 2 3 4 ...
- ORA-00942:表或视图不存在(低级错误)
在好多时候.调试PL/SQL对象时会报.ORA-00942 看看错误原因吧: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvamFjc29uX2JhaQ== ...
- Python中字符串的方法及注释
先整理到这里:用的时候便于查询.相当于自己的资料库吧. capitalize() 把字符串的第一个字符改为大写 casefold() 把整个字符串的所有字符改为小写 center(width) ...
- Java 7如何操纵文件属性
Java 7如何操纵文件属性 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 准备写点基础性的文章,Java 7已经出来很长一段时间了,但是很多Java程 ...
- 终于懂了:WM_PAINT 与 WM_ERASEBKGND(三种情况:用户操作,UpdateWindow,InvalidateRect产生的效果并不相同),并且用Delphi代码验证 good
一直对这两个消息的关系不是太了解,借重新深刻学习windows编程的机会研究一番. 1)当窗口从无效变为有效时,比方将部分覆盖的窗口恢复时会重绘窗口时:程序首先会通过发送其他消息调用DefWindow ...
- Usaco 1.3.2 修理牛棚(Barn Repair)
Barn Repair 题意:在一个夜黑风高,下着暴风雨的夜晚,农民约翰的牛棚的屋顶.门被吹飞了. 好在许多牛正在度假,所以牛棚没有住满. 剩下的牛一个紧挨着另一个被排成一行来过夜. 有些牛棚里有 ...