Script Graph

使用指南

资产 / 字体 / BitmapFont节点

资产 / 字体 / BitmapFont 节点手册,包含 12 个节点的用途、引脚、使用场景和注意事项。

16

学习目标

读取和验证 Cocos 资产对象,把图片、音频、材质、Prefab 等资源接入工作流逻辑。

覆盖范围

  • 节点数量:12
  • 分类路径:资产 / 字体 / BitmapFont

典型使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

通用注意事项

  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

节点索引

节点节点 ID输入/输出执行方式
获取精灵帧bitmapFontGetSpriteFrame1 / 1立即继续
获取所有属性bitmapFontGetProperties1 / 6立即继续
获取字号bitmapFontGetFontSize1 / 1立即继续
获取字偶距数量bitmapFontGetKerningCount1 / 1立即继续
获取字体配置bitmapFontGetConfig1 / 1立即继续
获取字形数量bitmapFontGetGlyphCount1 / 1立即继续
设置精灵帧bitmapFontSetSpriteFrame3 / 2立即继续
设置所有属性bitmapFontSetProperties5 / 2立即继续
设置字号bitmapFontSetFontSize3 / 2立即继续
设置字体配置bitmapFontSetConfig3 / 2立即继续
是否已加载bitmapFontGetIsLoaded1 / 1立即继续
新建位图字体bitmapFontCreate1 / 2立即继续

获取精灵帧

读取位图字体所绑定的字形图集精灵帧(spriteFrame)。 这是位图字体的底层纹理来源,包含所有字符的字形贴图。字体的 fontDefDictionary 缓存也依赖这个精灵帧的纹理进行初始化。 若字体尚未绑定精灵帧,输出为 null。

节点信息

字段
节点 IDbitmapFontGetSpriteFrame
分类资产
二级分类字体
分组BitmapFont
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 位图字体
这里需要连接一个已经加载好的 BitmapFont 实例。
该端口没有”选择字体”按钮,请先使用以下方式获取 BitmapFont 实例:
- 加载资产:把”类型”选为 BITMAP_FONT,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 BitmapFont。
- 新建位图字体:创建一个空位图字体实例。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
spriteFrame精灵帧数据cc.Asset / SpriteFrame精灵帧
位图字体的字形图集精灵帧。这是位图渲染的字形纹理来源,不是普通的 UI 图片。若未绑定则为 null。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

获取所有属性

一次性读出位图字体的全部已节点化稳定信息:spriteFrame、fontSize、fntConfig、glyphCount、kerningCount、isLoaded。 等同于同时连接 获取精灵帧、获取字号、获取字体配置、获取字形数量、获取字偶距数量、是否已加载,但只用一个节点即可。适合调试、预览、条件判断等场景,减少画布节点数量。

节点信息

字段
节点 IDbitmapFontGetProperties
分类资产
二级分类字体
分组BitmapFont
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 位图字体
这里需要连接一个已经加载好的 BitmapFont 实例。
该端口没有”选择字体”按钮,请先使用以下方式获取 BitmapFont 实例:
- 加载资产:把”类型”选为 BITMAP_FONT,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 BitmapFont。
- 新建位图字体:创建一个空位图字体实例。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
spriteFrame精灵帧数据cc.Asset / SpriteFrame精灵帧
位图字体的字形图集精灵帧。
-可选
fontSize字号数据number字号
字体资产的设计字号(px)。
-可选
fntConfig字体配置数据any字体配置
从 .fnt 文件解析的完整配置对象。
-可选
glyphCount字形数量数据number字形数量
fntConfig.fontDefDictionary 中的字符定义条目数。
-可选
kerningCount字偶距数量数据number字偶距数量
fntConfig.kerningDict 中的字偶距配对条目数。
-可选
isLoaded已加载数据boolean是否已加载
spriteFrame 与 fntConfig 均就绪且有基本字形数据时为 true。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

获取字号

读取位图字体资产的设计字号(fontSize)。 注意:这是字体资产本身记录的字号,代表设计时的标准字体大小,不等于 Label 组件当前实际渲染的字号(Label 的字号由其自身的 fontSize 属性控制,并通过 bmfontScale = actualFontSize / (fontSize * fontScale) 换算为实际比例)。

节点信息

字段
节点 IDbitmapFontGetFontSize
分类资产
二级分类字体
分组BitmapFont
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 位图字体
这里需要连接一个已经加载好的 BitmapFont 实例。
该端口没有”选择字体”按钮,请先使用以下方式获取 BitmapFont 实例:
- 加载资产:把”类型”选为 BITMAP_FONT,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 BitmapFont。
- 新建位图字体:创建一个空位图字体实例。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
fontSize字号数据number字号(fontSize)
字体资产的设计字号(单位:px)。不等于 Label 当前实际渲染字号。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

获取字偶距数量

统计位图字体中定义的字偶距配对数量(kerningCount)。 从 fntConfig.kerningDict 中统计条目数量,代表该字体为多少个字符对配置了微调间距。kerning 用于优化特定字符组合(如”AV”、“Te”)之间的视觉间距,提升排版质量。 若值为 0,表示字体未配置字偶距(通常正常,许多位图字体不包含字偶距数据)。

节点信息

字段
节点 IDbitmapFontGetKerningCount
分类资产
二级分类字体
分组BitmapFont
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 位图字体
这里需要连接一个已经加载好的 BitmapFont 实例。
该端口没有”选择字体”按钮,请先使用以下方式获取 BitmapFont 实例:
- 加载资产:把”类型”选为 BITMAP_FONT,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 BitmapFont。
- 新建位图字体:创建一个空位图字体实例。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
kerningCount字偶距数量数据number字偶距数量
fntConfig.kerningDict 中的字偶距配对条目数。fntConfig 未就绪时为 0。许多位图字体不包含字偶距数据(值为 0 属正常)。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

获取字体配置

读取位图字体的完整字体配置对象(fntConfig)。 fntConfig 是从 .fnt 文件解析而来的配置对象,包含字形映射(fontDefDictionary)、字偶距表(kerningDict)、图集名称(atlasName)、字号等关键数据。引擎在排版时直接依赖这些字段。 注意:若字体尚未完成加载,fntConfig 可能为 null。

节点信息

字段
节点 IDbitmapFontGetConfig
分类资产
二级分类字体
分组BitmapFont
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 位图字体
这里需要连接一个已经加载好的 BitmapFont 实例。
该端口没有”选择字体”按钮,请先使用以下方式获取 BitmapFont 实例:
- 加载资产:把”类型”选为 BITMAP_FONT,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 BitmapFont。
- 新建位图字体:创建一个空位图字体实例。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
fntConfig字体配置数据any字体配置
从 .fnt 文件解析的完整配置对象,包含 fontDefDictionary、kerningDict、atlasName 等排版关键数据。字体未加载时为 null。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

获取字形数量

统计位图字体中已定义的字形数量(glyphCount)。 从 fntConfig.fontDefDictionary 中统计键的数量,代表当前字体能正确渲染的字符总数。可用于快速判断字体是否完整加载:若 glyphCount 为 0,通常说明 fntConfig 尚未就绪。 注意:此节点统计的是字符定义条目数,不涉及字符的实际可见度或纹理完整性。

节点信息

字段
节点 IDbitmapFontGetGlyphCount
分类资产
二级分类字体
分组BitmapFont
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 位图字体
这里需要连接一个已经加载好的 BitmapFont 实例。
该端口没有”选择字体”按钮,请先使用以下方式获取 BitmapFont 实例:
- 加载资产:把”类型”选为 BITMAP_FONT,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 BitmapFont。
- 新建位图字体:创建一个空位图字体实例。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
glyphCount字形数量数据number字形数量
fntConfig.fontDefDictionary 中的字符定义条目数。fntConfig 未就绪时为 0。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

设置精灵帧

设置位图字体所绑定的字形图集精灵帧(spriteFrame)。 注意:仅更新 spriteFrame 引用,不会自动触发内部 fontDefDictionary 缓存重建。若需要字形缓存生效,通常还需要配合完整的字体初始化流程(包括 fntConfig 的设置)。 spriteFrame 端口无内联 picker,请连接已有 SpriteFrame 实例。

节点信息

字段
节点 IDbitmapFontSetSpriteFrame
分类资产
二级分类字体
分组BitmapFont
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
exe-执行流执行流执行入口-可选
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 位图字体
这里需要连接一个已经加载好的 BitmapFont 实例。
该端口没有”选择字体”按钮,请先使用以下方式获取 BitmapFont 实例:
- 加载资产:把”类型”选为 BITMAP_FONT,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 BitmapFont。
- 新建位图字体:创建一个空位图字体实例。
-必填
spriteFrame精灵帧数据cc.Asset / SpriteFrame精灵帧
要绑定的字形图集精灵帧。请连接已有 SpriteFrame 实例(无内联 picker)。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
out-执行流执行流执行完成-可选
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 位图字体(透传)
把当前操作的 BitmapFont 实例原样传出,便于将多个配置节点串联在一起。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

设置所有属性

一次性批量修改位图字体的多个可写属性:spriteFrame、fontSize、fntConfig。 公开引脚语义(重要):除 exe 与 bitmapFont 外,所有可写属性引脚默认不公开(isPublic: false),只有被显式公开的引脚才参与写入。若想保留目标属性原值不变,必须保持引脚不公开——仅断开连线不够,已公开的引脚会用内联控件默认值覆盖原值。

节点信息

字段
节点 IDbitmapFontSetProperties
分类资产
二级分类字体
分组BitmapFont
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
exe-执行流执行流执行入口-可选
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 位图字体
这里需要连接一个已经加载好的 BitmapFont 实例。
该端口没有”选择字体”按钮,请先使用以下方式获取 BitmapFont 实例:
- 加载资产:把”类型”选为 BITMAP_FONT,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 BitmapFont。
- 新建位图字体:创建一个空位图字体实例。
-必填
spriteFrame精灵帧数据cc.Asset / SpriteFrame精灵帧
要绑定的字形图集精灵帧。默认不公开;公开后才参与写入。
-可选
默认隐藏
fontSize字号数据number字号
要设置的设计字号(px)。默认不公开;公开后才参与写入。
输入框
默认值:32
可选
默认隐藏
fntConfig字体配置数据any字体配置
要写入的完整字体配置对象。默认不公开;公开后才参与写入(无内联控件)。
-可选
默认隐藏

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
out-执行流执行流执行完成-可选
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 位图字体(透传)
把当前操作的 BitmapFont 实例原样传出,便于将多个配置节点串联在一起。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

设置字号

设置位图字体资产的设计字号(fontSize),单位为 px。 重要:仅修改字体资产记录的设计字号,不会直接改变 Label 组件的显示大小。Label 的实际渲染大小通过 bmfontScale = actualFontSize / (fontSize * fontScale) 与设计字号关联。修改此值可能影响字形缩放比例。

节点信息

字段
节点 IDbitmapFontSetFontSize
分类资产
二级分类字体
分组BitmapFont
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
exe-执行流执行流执行入口-可选
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 位图字体
这里需要连接一个已经加载好的 BitmapFont 实例。
该端口没有”选择字体”按钮,请先使用以下方式获取 BitmapFont 实例:
- 加载资产:把”类型”选为 BITMAP_FONT,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 BitmapFont。
- 新建位图字体:创建一个空位图字体实例。
-必填
fontSize字号数据number字号
要设置的设计字号(px)。建议与 .fnt 文件中的 info size 保持一致。
输入框
默认值:32
必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
out-执行流执行流执行完成-可选
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 位图字体(透传)
把当前操作的 BitmapFont 实例原样传出,便于将多个配置节点串联在一起。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

设置字体配置

设置位图字体的完整字体配置对象(fntConfig)。 重要:这是位图字体的核心配置。若配置缺失或不正确,即使有精灵帧也无法完成字形排版。通常配置对象来自另一个已加载字体的 获取字体配置 输出,或者来自 .fnt 数据的程序化构造。 fntConfig 端口无内联控件,需要连接上游配置对象。

节点信息

字段
节点 IDbitmapFontSetConfig
分类资产
二级分类字体
分组BitmapFont
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
exe-执行流执行流执行入口-可选
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 位图字体
这里需要连接一个已经加载好的 BitmapFont 实例。
该端口没有”选择字体”按钮,请先使用以下方式获取 BitmapFont 实例:
- 加载资产:把”类型”选为 BITMAP_FONT,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 BitmapFont。
- 新建位图字体:创建一个空位图字体实例。
-必填
fntConfig字体配置数据any字体配置
要写入的完整字体配置对象。请连接上游已加载字体的 获取字体配置 输出,或程序化构造的配置对象(无内联控件)。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
out-执行流执行流执行完成-可选
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 位图字体(透传)
把当前操作的 BitmapFont 实例原样传出,便于将多个配置节点串联在一起。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

是否已加载

检查位图字体是否基本可用于排版,输出 true 或 false。 当 精灵帧(spriteFrame) 和 fnt 配置(fntConfig) 都存在,且 fntConfig 中至少包含基本字形数据时返回 true。 可用于判断字体是否已准备好供 Label 组件使用。

节点信息

字段
节点 IDbitmapFontGetIsLoaded
分类资产
二级分类字体
分组BitmapFont
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 位图字体
这里需要连接一个已经加载好的 BitmapFont 实例。
该端口没有”选择字体”按钮,请先使用以下方式获取 BitmapFont 实例:
- 加载资产:把”类型”选为 BITMAP_FONT,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 BitmapFont。
- 新建位图字体:创建一个空位图字体实例。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
isLoaded已加载数据boolean是否已加载
true:spriteFrame 与 fntConfig 均就绪且有基本字形数据;false:数据不完整或尚未加载。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

新建位图字体

在游戏运行时创建一个全新的空位图字体实例。 注意:空实例默认没有精灵帧(spriteFrame)、没有 .fnt 配置(fntConfig),也无法直接用于 Label 渲染。通常需要继续用 设置精灵帧 和 设置字体配置 节点完成组装后再传给 Label.font。 若要加载已有位图字体资产,请改用 加载资产(类型选 BITMAP_FONT)。

节点信息

字段
节点 IDbitmapFontCreate
分类资产
二级分类字体
分组BitmapFont
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
exe-执行流执行流执行入口-可选

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
out-执行流执行流执行完成-可选
bitmapFont位图字体数据cc.Asset / BitmapFontBitmapFont 实例
新建的空位图字体实例。没有精灵帧与字体配置,需要进一步设置后才能用于 Label。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。