By default, ZDoom defines five fonts directly in the executable:
- Large font used for menus and level names on the intermission screen if graphics are not used instead. Defined from the FONTB* lumps in Heretic and Hexen and the DBIGFONT and SBIGFONT files in Doom and Strife, both provided in zdoom.pk3.
- Heretic and Hexen big fonts can be overridden by a font named HBIGFONT. Also, a font named BIGFONT will override the big font for every game.
- Fixed width used in the console. Provided in zdoom.pk3.
- Fixed width, contains characters 0 to 9. Provided in zdoom.pk3.
- The standard small font. Default. Defined from the FONTA* or STCFN* lumps.
- An alternate small font, found only in Strife. In other games, this is an alias to SMALLFONT. Defined from the STBFN* lumps.
In GZDoom, all main fonts except INDEXFONT are overhauled, and a new font (BIGUPPER) appears:
- BIGFONT is no longer defined from the DBIGFONT and SBIGFONT files but on a set of lumps located in zd_extra.pk3/filter/game-***/fonts/bigfont;
- BIGUPPER fills the same role as BIGFONT, but supports both uppercase and lowercase (smallcaps) letters, and is based in zd_extra.pk3/filter/game-***/fonts/bigupper;
- BigUpper is used as the header text in GZDoom's option menus.
- CONFONT is based on images located in gzdoom.pk3/fonts/consolefont, each reflecting a block of Unicode characters;
- SMALLFONT is located in zd_extra.pk3/filter/game-***/fonts/defsmallfont;
- SMALLFONT2 is located in zd_extra.pk3/filter/game-***/fonts/defsmallfont2.
In addition, all assets using the aforementioned formats are based on and named after Unicode instead of ISO 8859-1.