release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Search | Go
Wiki > Main > CreateFonts > FontFormat

FNT Font File Format

FNT is a simple binary font format used by Rockbox. It is a fixed-size raster font format that supports unicode.

(In this context a 'long' is intended to mean a 32 bit unit regardless of target architecture)

Header

The FNT header is exactly 36 bytes long consisting of the following fields:

Field Length (bytes) Description
UCHAR version[4] 4 magic number and version bytes (currently 'RB12')
USHORT maxwidth 2 font max width in pixels
USHORT height 2 font height in pixels
USHORT ascent 2 font ascent (baseline) in pixels
USHORT depth 2 monochrome (0) or anti-aliased (1)
ULONG firstchar 4 first character code in font
ULONG defaultchar 4 default character code in font
ULONG size 4 # characters in font
ULONG nbits 4 # bytes imagebits data in file
ULONG noffset 4 # longs offset data in file
ULONG nwidth 4 # bytes width data in file

Glyphs

Field Length (bytes) Description
MWIMAGEBITS bits nbits image bits variable data
[MWIMAGEBITS padded to 16-bit boundary]
USHORT offset noffset*2 offset variable data
UCHAR width nwidth*1 width variable data

(to be written)
r3 - 05 Mar 2011 - 18:38:23 - ThomasMartitz

Parents: CreateFonts
Copyright by the contributing authors.