跳转到正文
iPlugin

字体与字符宽度

TTF 文件、字体 ID、字号与自动测宽

先放 TTF 文件,再登记字体,Layout 才能通过 font 引用。操作教程见添加字体。

文件结构

tutorial.ttf
tutorial.yml

字体文件

plugins/Xerr/core/assets/font/tutorial.yml
tutorial_font:
  ttf: tutorial
  size: 10
  oversample: 5.0

字体 ID 是顶层 tutorial_font,字体文件是 ttf/tutorial.ttf。同一 TTF 可以登记多个字号,使用不同字体 ID。

字段

字段类型 / 省略值怎样填写
ttf字符串 / 使用字体时必填真实 TTF 文件名,不含 .ttf;例如 tutorial
size整数 / 8显示字号,单位为 GUI 像素;例如 10、12
oversample小数 / 5.0字体采样倍率,不是显示大小;首次保留 5.0,过高会增加客户端资源开销

修改 TTF、字号或采样需要打包,不是只重载。

Layout 引用

文件级默认字体:

Layout 文件顶部片段
defaults:
  font: tutorial_font

单个文字覆盖:

文字元素中的片段
font: tutorial_font
value: "&f欢迎回来"

文字宽度

Xerr 从 TTF 读取字符前进量,结合字号与采样计算文字宽度,用于对齐、背景和信息栏排列。等宽字体和比例字体都无需配置字符宽度规则。

颜色代码不占宽度;粗体与样式重置会参与测量,定位时保留小数精度。

更换 TTF 或修改字号、采样后,执行 /xerr pack 并让客户端加载更新后的资源包。

文字顶部定位

Xerr 自动测量字体基线,使布局 y 统一表示文字顶部。文字宽度与基线分别处理;需要调整位置时,直接修改布局坐标。