---
title: "Fonts — fonts"
---

> Documentation Index
> Fetch the complete documentation index at: https://aesthetic-docs.pages.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Fonts — fonts

| Function | What it does |
|----------|--------------|
| `fonts.register(name, path[, antialias])` | Loads a TTF/OTF file. Path is relative to the scripts folder (absolute works too). `antialias` defaults to `true` |
| `fonts.exists(name)` | `true` if a font with this name is registered |

```lua
fonts.register("pixel", "fonts/pixel.ttf")
render.text("Hi", 8, 8, 12, nil, "pixel")
```

Registering the same name again replaces the font (hot-reload friendly). Built-in fonts
cannot be replaced.

## Vanilla font — `"minecraft"`

Built-in font that renders the actual in-game font. Glyphs come from the game's font
providers, so resource packs and Force Unicode apply automatically — it follows every
resource reload.

Size is line height in pixels: `9` matches vanilla at GUI scale 1, `18` at scale 2.
Shaping is vanilla-faithful — one glyph per code point, no kerning or ligatures.

```lua
render.text("Diamonds: 12", 8, 8, 18, nil, "minecraft")
```

Paint color tints glyphs like vanilla text color. Colored glyphs from emoji-style packs
keep their own colors.

Source: https://aesthetic-docs.pages.dev/fonts/index.md
