Minecraft 位图字体 provider 的工作原理
Java 版资源包可以将字符映射到 PNG 精灵图中的单元格。本生成器创建位图 provider JSON,用于关联纹理资源位置、字符行、字形高度和基线位置。它不会创建或修改 PNG,因此此处输入的字符网格必须与您放入资源包中的图像匹配。
字符网格中的每一行代表纹理中等大小单元格的一个水平行。从左到右读取每一行,并保持所有行长度相同。如果 JSON 将字符列在错误的单元格中,Minecraft 将显示相邻的字形。
纹理资源位置
使用带命名空间的资源位置,例如 my_pack:font/custom.png。对应的图像应位于 assets/my_pack/textures/font/custom.png 下。命名空间和路径区分大小写,应使用小写字符。
高度和基线偏移
高度控制渲染字形的高度(像素)。基线偏移使字形相对于文本基线移动。开始时将基线偏移设置为高度下方 1 像素,在 Minecraft 中预览资源包,当字母相对于原版字体过高或过低时进行调整。
JSON 保存位置
下载 custom.json 并将其放在 assets/<namespace>/font 下。文件名将成为字体资源 ID。保存为 assets/my_pack/font/custom.json 的文件可以被支持 font 字段的文本组件引用为 my_pack:custom。
此生成器验证的内容
该工具保持 provider 结构有效,并将每个文本行转换为字符行。它无法检查外部 PNG、验证单元格尺寸、检测重复字符,或确认服务器向玩家发送资源包。
创建并测试自定义 Minecraft 字体
- 准备一个透明的 PNG,其字形按规则网格排列。
- 输入 PNG 资源位置,并复制确切的字符顺序,每个文本行对应图像的一行。
- 设置高度和基线偏移,然后下载 custom.json。
- 将 JSON 和 PNG 放入匹配的资源包文件夹中,并在 Minecraft 中重新加载资源。
- 测试您打算使用的每个字符,当间距不正确时调整 PNG 或基线偏移。
Minecraft 字体 JSON 常见问题
此工具会创建字体 PNG 吗?
不会。它仅生成位图 provider JSON。请单独创建透明精灵图,并使其单元格顺序与字符网格完全匹配。
为什么 Minecraft 显示错误的字符?
通常原因是 PNG 单元格顺序与 chars 行不匹配。请检查行长度、空白单元格、换行符、命名空间、文件路径以及实际图像尺寸。
这可以替换默认的 Minecraft 字体吗?
资源包可以在默认字体文件中定义 provider,但替换原版字符会影响使用该字体的所有界面。当只有选定的文本组件需要自定义字形时,使用单独的命名空间字体更安全。
重新加载资源包后字体不可见?
确认资源包加载无资源错误,JSON 位于 assets/<namespace>/font,PNG 位于 assets/<namespace>/textures 下,并且 file 字段指向相同的命名空间和纹理路径。