[ { "name": "FontCharacterIndex", "fields": [ { "name": "character index", "type": "Index", "reflexive": "characters", "struct": "Font" } ], "type": "struct", "size": 2 }, { "name": "FontCharacterTables", "fields": [ { "name": "character table", "type": "Reflexive", "struct": "FontCharacterIndex", "maximum": 256 } ], "type": "struct", "size": 12 }, { "name": "FontCharacter", "fields": [ { "name": "character", "type": "uint16" }, { "name": "character width", "type": "int16" }, { "name": "bitmap width", "type": "int16" }, { "name": "bitmap height", "type": "int16" }, { "name": "bitmap origin x", "type": "int16" }, { "name": "bitmap origin y", "type": "int16" }, { "name": "hardware character index", "type": "uint16" }, { "type": "pad", "size": 2 }, { "name": "pixels offset", "type": "int32" } ], "type": "struct", "size": 20, "read_only": true, "needs_preprocessed": true }, { "name": "Font", "fields": [ { "name": "flags", "type": "int32" }, { "name": "ascending height", "type": "int16" }, { "name": "descending height", "type": "int16" }, { "name": "leading height", "type": "int16" }, { "name": "leading width", "type": "int16", "comment": "you can't actually set this; it gets overridden with (ascending height + descending height) / 5 on map build", "cache_only": true }, { "type": "pad", "size": 36 }, { "name": "character tables", "type": "Reflexive", "struct": "FontCharacterTables", "cache_only": true, "maximum": 256 }, { "name": "bold", "type": "TagReference", "groups": [ "font" ] }, { "name": "italic", "type": "TagReference", "groups": [ "font" ] }, { "name": "condense", "type": "TagReference", "groups": [ "font" ] }, { "name": "underline", "type": "TagReference", "groups": [ "font" ] }, { "name": "characters", "type": "Reflexive", "struct": "FontCharacter", "read_only": true, "maximum": 32000 }, { "name": "pixels", "type": "Data", "maximum": 8388608 } ], "type": "struct", "size": 156, "group": "font", "needs_preprocessed": true } ]