SuperAPI AI 工具集

text-and-bitmaptext

编程与开发

查看项目

更新于 10-15 15:50

技能介绍

用途:在 Phaser 4 游戏中显示文本,提供 Text(基于 Canvas)与 BitmapText(预渲染字体纹理)两类游戏对象。

主要能力:Text 支持 Web/CSS 字体、阴影、渐变、描边、RTL、内置换行与 left/right/center/justify 对齐;BitmapText 渲染快、适合频繁更新,支持 setMaxWidth 换行、字符/单词着色(WebGL)与投影;DynamicBitmapText 可通过 setDisplayCallback 逐字符操作。另含复古字体(RetroFont)解析、文本边界查询与高 DPI resolution。

使用方式:用 this.add.text(x, y, text, style) 创建 Text;用 this.load.bitmapFont('myFont', 'font.png', 'font.xml') 加载字体后,以 this.add.bitmapText(x, y, 'myFont', 'Score: 0', 32) 创建 BitmapText;逐字符效果用 this.add.dynamicBitmapText(...) 并调用 setDisplayCallback。样式可通过 setStyle、setColor、setFontSize、setWordWrapWidth、setPadding 等方法修改,setter 均返回 this 支持链式调用。

适用场景:需要灵活样式的 UI 文本用 Text;分数、计时器等高频更新或大量渲染的文本用 BitmapText;逐字符动画用 DynamicBitmapText。

限制:Text 每次变更会重建 Canvas 纹理,性能较低,建议批量修改后调用 updateText();Web 字体需由浏览器或第三方加载器提供,Phaser 不负责加载;字体名含数字或特殊字符需加双引号;Text 原点默认 (0,0),对齐仅对多行文本生效;BitmapText 字体必须先加载进缓存,其投影与着色仅限 WebGL,且不支持 Web 字体与 RTL。