`
zhouxi2010
  • 浏览: 51117 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

cocos2d-html5经验-label换行

阅读更多

使用 cocos2d-html5 时,可以通过 cc.LabelTTF 显示的文本,但是不会自动换行,需要要\n来换行,如果遇到需要自动换行的情况,可以参考http://www.imququ.com/post/cocos2d-html5-labelttf.html提到的方法,这里做下搬运工.

首先,我们需要获取指定文本的宽度,可以通过创建一个临时 LabelTTF 来完成:

 
function getStrWidth(str, fontName, fontSize) {
    var tmpLabel = cc.LabelTTF.create(str, fontName, fontSize);
    return tmpLabel.getContentSize().width;
}
接着,就可以循环插入 \n 了。大概思路是指定一个差不多的初始值 L(可以用指定宽度 width 除以字体大小),截出 0 到 L 位置的字符串,用 getStrWidth 计算宽度,如果比我们指定的宽度 width 大,L--,继续比较;否则 L++ 继续。直到 L 个字符宽度和我们指定宽度刚好相等(很小的概率),或者 L 个字符长度不够,但 L+1 长度又多了的情况下,可以确定这一行可以放这 L 个字符。然后继续处理下一行,直至字符串结束。
另外就是要注意图文混排的问题
分享到:
评论

相关推荐

    cocos2d-html5-v2.2.3.zip

    本文将深入探讨Cocos2d-html5,它是一个基于HTML5的版本,允许开发者使用JavaScript进行游戏开发,非常适合那些希望从其他领域转型到游戏开发,特别是对于有前端开发经验的人来说。 在Cocos2d-html5-v2.2.3这个版本...

    cocos2d-iphone~cocos2d-html5移植之旅

    对于有cocos2d-iphone经验的开发者来说,转向cocos2d-html5相对容易,因为它保留了许多相似的API和开发流程。这种迁移路径降低了学习成本,使得开发者能够专注于游戏设计和优化,而非技术栈的差异。 #### 系列文章...

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

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

    cocos2d-x windows vs2010配置

    "cocos2d-x windows vs2010 配置详解" 本文将详细介绍如何在 Windows 环境下使用 Visual Studio 2010 配置 Cocos2d-x 游戏引擎。Cocos2d-x 是一个跨平台的游戏引擎,可以在多种平台上运行,包括 Windows、Mac OS X...

    cocos2d-x_v3.16安装及环境变量配置文档

    cocos2d-x 是一个开源的游戏开发框架,使用 C++ 语言编写,支持多平台发布,包括 iOS、Android、Windows、macOS、Linux 和 Web。cocos2d-x v3.16 是该框架的一个版本号,本文档主要介绍了该版本的安装流程以及环境...

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

    《Cocos2d-x 3.x游戏开发实战》是一本深度探讨Cocos2d-x 3.x框架的游戏开发书籍,适合对游戏编程有...无论你是初学者还是有一定经验的开发者,这本书都能提供宝贵的指导,助你在Cocos2d-x游戏开发的道路上更进一步。

    Cocos2d-html5

    Cocos2d-html5是一个基于Web的开源游戏开发框架,专为创建2D游戏、交互式应用程序和动画而设计。这个框架充分利用了HTML5、CSS3和JavaScript等现代Web技术,使得开发者能够在浏览器环境中构建高性能的游戏应用。...

    Cocos2d-JS游戏开发

    Cocos2d-JS由Cocos2d-x移植而来,采用JavaScript语言,支持HTML5和原生应用开发。它的核心组件包括场景(Scene)、节点(Node)、动作(Action)、精灵(Sprite)等,这些构建块可以组合成复杂的交互式游戏世界。例如,场景...

    cocos2d-x-cocos2d-x-2.2.2.zip

    这个压缩包“cocos2d-x-cocos2d-x-2.2.2.zip”包含了cocos2d-x 的2.2.2版本,该版本是cocos2d-x发展中的一个重要里程碑,它提供了许多改进和优化,使得开发者能够更加高效地创建2D游戏和应用。 在cocos2d-x 2.2.2中...

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

    《Cocos2d-x实战 JS卷 Cocos2d-JS开发》是一本深入探讨Cocos2d-x游戏引擎JavaScript版本使用的专业书籍。Cocos2d-x是全球范围内广泛采用的游戏开发框架,尤其适用于2D游戏的制作,而Cocos2d-JS则是其JavaScript接口...

    Cocos2d-x实战:C++卷(2版)源代码

    5. **事件处理**:Cocos2d-x提供了事件处理机制,包括触摸事件、键盘事件、网络事件等,使得游戏能够响应用户的输入。 6. **声音与音乐**:Cocos2d-x支持音频播放,包括背景音乐和音效,可以实现音效的同步和控制。...

    cocos2d-html5-v2.2.3

    《cocos2d-html5-v2.2.3:打造跨平台的游戏开发之旅》 cocos2d-html5-v2.2.3是cocos2d-x系列的一个重要版本,专为HTML5游戏开发设计。cocos2d-x是一个开源的游戏开发框架,它基于cocos2d,并且支持多种平台,包括...

    Cocos2d-x实战++JS卷++Cocos2d-JS开发+PDF电子书下载+带书签目录+完整

    标题中提到了"Cocos2d-x实战++JS卷++Cocos2d-JS开发+PDF电子书下载+带书签目录+完整",这里面包含了几个关键知识点: 1. Cocos2d-x:是一个开源的游戏开发框架,它主要用于开发跨平台的游戏和应用程序,支持iOS、...

    cocos2d-x-3.13.1 spine3.6.zip

    《Cocos2d-x 3.13.1与Spine 3.6集成详解》 Cocos2d-x是一个广泛使用的开源游戏开发框架,它基于C++,同时支持Lua和JavaScript等多种脚本语言,为开发者提供了高效、跨平台的游戏开发解决方案。在3.13.1版本中,...

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

    《cocos2d-x 3.8:经典游戏引擎源码解析》 cocos2d-x 是一个跨平台的游戏开发框架,它基于C++,同时提供了Lua和JavaScript的绑定,让开发者可以方便地在多种操作系统上创建2D游戏、演示程序和其他图形交互应用。这...

    Cocos2d-JS开发之旅 从HTML 5到原生手机游戏 PDF 带书签目录 完整版

    《Cocos2d-JS开发之旅:从HTML5到原生手机游戏》是一本深入探讨Cocos2d-JS框架的书籍,旨在帮助开发者从Web前端的HTML5技术过渡到跨平台的原生手机游戏开发。Cocos2d-JS是Cocos2d-x引擎的一个分支,它结合了...

    cocos2d-html.min.zip

    cocos2d-js是一个基于Cocos2d-x的JavaScript版本,它继承了Cocos2d-x的丰富功能,包括精灵、动作、层、场景、物理引擎等,同时支持HTML5和JavaScript,使得游戏能在浏览器上运行。而“cocos2d-html.min”则特指这个...

    Cocos2d-x实战C++卷关东升著完整版pdf

    《Cocos2d-x实战C++卷》是关东升所著的一本深入探讨Cocos2d-x游戏引擎开发的专业书籍。Cocos2d-x是一个开源的、跨平台的2D游戏开发框架,广泛应用于iOS、Android、Windows等多个操作系统。本书以C++语言为主要编程...

    Cocos2d-html5 references/cocos2d-html5文档

    Cocos2d-html5是一个基于HTML5的开源游戏开发框架,它允许开发者使用JavaScript来创建2D游戏和其他交互式应用。这个压缩包包含了Cocos2d-html5的API文档,对于那些想要深入理解和使用该框架的开发者来说是极其宝贵的...

    cocos2d-x-3.1.zip

    Cocos2d-x是一个开源的游戏开发框架,广泛用于2D游戏、实时渲染应用程序和其他互动内容的制作。这个压缩包“cocos2d-x-3.1.zip”包含了Cocos2d-x框架的3.1版本,这是一个经典且相对旧的版本,可能对于那些寻找历史...

Global site tag (gtag.js) - Google Analytics