手册:font_metadata.json

来自Minecraft基岩版开发Wiki

font_metadata.json是附加包中用于自定义字体的文件,其完整路径为<RP>/font/font_metadata.json。不同附加包的font_metadata.json文件会按照资源栈的顺序合并后再进行加载。

格式[编辑]

  •  font_metadata.json:根对象。
    • *version:该文件的格式版本,当前只能为1
    •  fonts:要定义的字体。
      • :要定义的一个字体。
        • *font_format:该字体的格式,可以填写bitmapttfttfmsdfmsdf,分别代表位图、TrueType、TrueType MSDF和单纯的MSDF(多通道有向距离场)字体。
        • *font_name:该字体的名称。
        •  generate_pages_on_start:如果存在该字段,将在启动时生成分页。
          • :一个或一段分页。如果为一个整数,则代表一个单独的分页。如果是一个对象,则代表一段连续的分页。
            •  first_page:一段分页中的第一页。
            •  last_page:一段分页中的最后一页。
        •  lowPerformanceCompatible:是否针对低性能设备优化。如果开启,在低性能设备上将显示“Low performance device detected, will use a backup font instead of <该字体名>”并将该字体的显示切换为当前游戏设置的默认字体。
        • 位图字体额外字段 参见Template:Nbt inherit/font/bitmap/template
        • TrueType字体额外字段 参见Template:Nbt inherit/font/ttf/template
        • TrueType MSDF字体额外字段 参见Template:Nbt inherit/font/ttfmsdf/template
        • MSDF字体额外字段 参见Template:Nbt inherit/font/msdf/template
    •  font_aliases:要定义的字体别名。
      • :要定义的一个字体别名。
        • *alias:该别名的名称,为将用于JSON UI内的字体名。
        • *fonts:该别名引用的字体。
          • :一个引用字体。
            • *font_reference:字体的引用名称,为在font_metadata.json/fonts中定义的字体名。
            •  font_ranges:该引用的范围,可以指定仅引用一定范围内的字符。如果不指定该字段,则将引用全部字符。
              • :一个范围。
                • *first:该范围的第一个字符所在的Unicode码的10进制表示整数。
                • *last:该范围的最后一个字符所在的Unicode码的10进制表示整数,如果和first一致意味着仅引用一个字符。
            •  font_language_code:该引用的字体语言代码。
        •  font_scale_factor:该别名的字体缩放因子,默认为0.0