`

Cocos2d-JS中的cc.LabelTTF

 
阅读更多

cc.LabelTTF是使用系统中的字体,它是最简单的标签类。cc.LabelTTF类图如下图所示,可以cc.LabelTTF继承了cc.Node类,具有cc.Node的基本特性。

LabelTTF类图



如果我们要展示如图所示的Hello World文字,我们可以使用cc.LabelTTF实现。

cc.LabelTTF实现的Hello World文字

cc.LabelTTF实现的Hello World文字主要代码如下:

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. var HelloWorldLayer = cc.Layer.extend({  
  2.     sprite:null,  
  3.     ctor:function () {  
  4.         //////////////////////////////  
  5.         // 1. super init first  
  6.         this._super();  
  7.             ……  
  8.         var helloLabel = new cc.LabelTTF("Hello World", "Arial", 38);                   ①  
  9.         helloLabel.x = size.width / 2;  
  10.         helloLabel.y = 0;  
  11.   
  12.   
  13.         this.addChild(helloLabel, 5);  
  14.           ……  
  15.         return true;  
  16.     }  
  17. });  

上述代码第①行是创建一个cc.LabelTTF对象,cc.LabelTTF类的构造函数定义如下:
ctor(text, fontName, fontSize, dimensions, hAlignment, vAlignment)
text参数是要显示的文字,fontSize参数是字体,它可以是系统字体名,例如本例中的Arial,也可以是自定义的字体文件,字体文件应该放在res文件夹或子文件夹中,如下图所示,我们的TTF字体文件是Marker Felt.ttf,使用Marker Felt.ttf字体的代码如下:
var helloLabel = new cc.LabelTTF("Hello World", "Marker Felt", 38);
Marker Felt是与Marker Felt.ttf字体文件对于的字体文件名,该名称是我们在src/resource.js文件中定义的,src/resource.js代码如下:

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. var g_resources = [  
  2.     //fonts  
  3.     {  
  4.         type: "font",                                                   ①  
  5.         name: "Marker Felt",                                                ②  
  6.         srcs: ["res/fonts/Marker Felt.ttf"]                                     ③  
  7.     }  
  8.   
  9.   
  10. ];  

g_resources数组变量是用来保存需要加载的资源集合,字体文件也是一种资源文件,也需要在场景启动时候加载,代码第①~③行是创建字体资源加载项目,其中第①行代码是指定加载项目的类型,第②行是字体文件名,这个名字是程序中使用的名字,我们上面的实例就使用了这个名字,第③行是字体文件的路径,一个字体可以能由多个字体文件构成,因此srcs配置项是一个数组。
注意  自定义的字体文件不能在JSB本地方式运行中正常显示,而系统字体(只要是运行的操作系统安装了该字体)可以在Web浏览器方式运行和JBS本地方式运行中正常显示。

TTF字体文件位置

参数dimensions标签内容大小,如果标签不能完全显示在指定的大小内,标签将被截掉部分,默认值为cc.size(0,0),它表示标签刚好显示在指定的大小内。参数hAlignment 表示标签在dimensions指定大小内水平对齐的方式,默认值是cc.TEXT_ALIGNMENT_LEFT,表示水平右对齐。参数vAlignment表示标签在dimensions指定大小内垂直对齐的方式,默认值是cc.VERTICAL_TEXT_ALIGNMENT_TOP,表示垂直顶对齐。

 

 

更多内容请关注最新Cocos图书《Cocos2d-x实战:JS卷——Cocos2d-JS开发

本书交流讨论网站:http://www.cocoagame.net

欢迎加入Cocos2d-x技术讨论群:257760386

更多精彩视频课程请关注智捷课堂Cocos课程:http://v.51work6.com

 

 

 

 

《Cocos2d-x实战 JS卷》现已上线,各大商店均已开售:

京东:http://item.jd.com/11659698.html

欢迎关注智捷iOS课堂微信公共平台,了解最新技术文章、图书、教程信息

分享到:
评论

相关推荐

    经典版本 方便下载 源码 旧版本 3.8 官网找不到了 cocos2d-x-3.8.zip

    cocos2d-x 是一个跨平台的游戏开发框架,它基于C++,同时提供了Lua和JavaScript的绑定,让开发者可以方便地在多种操作系统上创建2D游戏、演示程序和其他图形交互应用。这个“cocos2d-x-3.8.zip”压缩包包含的是cocos...

    cocos2d-html.min.zip

    《cocos2d-...如果你是Cocos2d-js的爱好者或开发者,那么这个压缩包值得你尝试,它将帮助你在开发过程中实现更高的效率和更好的游戏体验。分享这样的资源,无疑是推动社区发展和提升开发者技能的有效方式。

    cocos2d-js-min.9c507.js

    cocos2d-js-min.9c507.js

    cocos2d-js-min.b8b86.js

    cocos2d-js-min.b8b86.js

    Cocos2d-x 3.x游戏开发实战pdf含目录

    《Cocos2d-x 3.x游戏开发实战》是一本深度探讨Cocos2d-x 3.x框架的游戏开发书籍,适合对游戏编程有兴趣的开发者学习。Cocos2d-x 是一个开源的、跨平台的2D游戏开发框架,广泛应用于iOS、Android、Windows等多平台的...

    cocos2d-x-cocos2d-x-2.2.2.zip

    在cocos2d-x 2.2.2中,开发者可以利用C++语言进行编程,同时也支持Lua和JavaScript作为脚本语言,这大大增加了开发的灵活性。C++的性能优势结合脚本语言的易用性,使得游戏的开发过程既高效又便捷。同时,cocos2d-x...

    cocos2d-iphone-2.0.tar.gz

    10. **Scripting Support**:虽然主要是Objective-C,但Cocos2d-iPhone还支持JavaScript和Python等脚本语言,以增加灵活性和快速原型设计能力。 11. **Performance Improvements**:Cocos2d-iPhone 2.0在性能上做了...

    cocos2d-x-3.1.zip

    总的来说,Cocos2d-x 3.1是游戏开发者学习2D游戏开发的一个重要参考点,虽然它已经不是最新的版本,但其核心概念和机制在后续版本中仍然保持一致,是理解整个Cocos2d-x框架的基础。解压并研究“cocos2d-x-3.1”中的...

    Cocos2d-JS游戏开发.pdf

    由于提供的文件内容实际上并没有包含任何有关Cocos2d-JS游戏开发的具体知识点,而且内容中多次重复相同网址,没有实际的文本信息,所以无法生成与Cocos2d-JS游戏开发相关的知识点。 但是,我可以提供一些关于Cocos...

    cocos2d-x-2.1.4.zip

    2.1.4版本作为历史的一个节点,它记录了cocos2d-x发展过程中的一个重要阶段,对于开发者来说,这是一个学习和研究历史技术演进的宝贵资源。 首先,我们来了解一下cocos2d-x的核心特性。这个框架使用C++作为主要编程...

    Cocos2d-x-3.x游戏开发之旅

    Cocos2d-x-3.x游戏开发之旅-钟迪龙著 全新pdf版和附书代码(代码为工程文件,可复制) 附带目录标签

    cocos2d-x-2.1.4.rar

    2. C++ 基础:cocos2d-x 使用C++作为主要编程语言,同时提供了Python、JavaScript等语言的绑定,满足不同开发者的需求。 3. 图形渲染:框架内置了基于OpenGL的图形渲染引擎,提供2D图形绘制、动画处理等功能,使...

    cocos2d-x 3.x游戏开发实战光盘

    《cocos2d-x 3.x游戏开发实战光盘》是一个深入探讨cocos2d-x 3.x游戏引擎开发的资源集合,旨在帮助开发者通过实际案例掌握这一强大的2D游戏开发工具。cocos2d-x是一款开源的游戏开发框架,基于C++,广泛应用于跨平台...

    Cocos2d-x实战:JS卷——Cocos2d-JS开发

    资源名称:Cocos2d-x实战:JS卷——Cocos2d-JS开发内容简介:本书是介绍Cocos2d-x游戏编程和开发技术书籍,介绍了使用Cocos2d-JS中核心类、瓦片地图、物理引擎、音乐音效、数据持久化、网络通信、性能优化、多平台...

    cocos2d-x-3.13.1.zip

    《cocos2d-x 3.13.1:深入解析与应用》 cocos2d-x 是一个开源的游戏开发框架,广泛应用于跨平台2D游戏的开发,支持iOS、Android、Windows等操作系统。它的3.13.1版本是一个重要的里程碑,提供了诸多改进和优化,...

    cocos2d-x-3.4.z01

    cocos2d-x-3.4.z01 压缩包2/7

    Cocos2d-js项目教程.pdf文件

    Cocos2d-js是Cocos2d-x系列的一部分,Cocos2d-x是用C++编写的,而Cocos2d-js则通过JavaScript绑定Cocos2d-x,使得开发者能够用更易学习和流行的JavaScript语言进行游戏开发。这个框架提供了丰富的图形绘制、动画处理...

    cocos2d-x-2.1.5.part1.rar

    cocos2d-x-2.1.5.part1.rar

    Learning.Cocos2d-JS.Game.Development

    Title: Learning Cocos2d-JS Game Development Author: Emanuele Feronato Length: 188 pages Edition: 1 Language: English Publisher: Packt Publishing Publication Date: 2015-01-12 ISBN-10: 1784390070 ISBN-...

Global site tag (gtag.js) - Google Analytics