Links
Comment on page

Manually creating font images

How to create font images manually without ItemsAdder

Some servers may require font images to be created manually for various reasons, for example:
  • you don't want ItemsAdder to manage the fonts
  • you want to use a custom namespace and custom font name for some custom characters
  • you want to manage them on your own

Creating a custom character

{
"file":"image_test.png",
"chars":[
"\uE250"
],
"height":8,
"ascent":9,
"type":"bitmap"
}
As you can see I created a json configuration entry, this is the list of settings for my custom font image.
Now you have to add it to the default.json file: assets/minecraft/font/default.json.
To do so you have to add it into the "providers" attribute.
{
"providers":[
{
"file":"image_test.png",
"chars":[
"\uE250"
],
"height":8,
"ascent":9,
"type":"bitmap"
}
]
}
If you have more entries you have to add a , after the previous entry, for example:
{
"providers":[
{
"file":"image1.png",
"chars":[
"\uE233"
],
"height":8,
"ascent":9,
"type":"bitmap"
},
{
"file":"image_test.png",
"chars":[
"\uE250"
],
"height":8,
"ascent":9,
"type":"bitmap"
}
]
}

Using a customized json file name

By using a customized json font file you can separate the default font characters from your custom characters.
To do so you just have to create a new json and call it whatever you want, for example my_font.json.
The complete path will be: assets/minecraft/font/my_font.json.
This feature only works on Minecraft 1.16+

Using a customized json namespace

If you want to further organize your pack you can use a customized namespace for your font file.
To do so you have to create a folder inside assets folder and use it instead of minecraft folder.
The complete path will be (for example): assets/your_namespace/font/my_font.json.
This feature only works on Minecraft 1.16+

Showing the customized namespace/font name in-game

If you customized the font namespace and/or the font name you have to use a special syntax to show your images in-game.
Example if you set both custom namespace and custom font name:
/tellraw @a [{"text":"Test message!","font":"your_namespace:my_font"}]
Example if you set only custom font name:
/tellraw @a [{"text":"Test message!","font":"my_font"}]
Last modified 2yr ago