FONT(6) FONT(6)
NAME
font, subfont - external format for fonts and subfonts
SYNOPSIS
#include <libg.h>
DESCRIPTION
Fonts and subfonts are described in cachechars(2).
External fonts are described by a plain text file that can
be read using rdfontfile. The format of the file is a header
followed by any number of subfont range specifications. The
header contains two numbers: the height and the ascent. The
height is the inter-line spacing and the ascent is the dis-
tance from the top of the line to the baseline. These num-
bers are chosen to display consistently all the subfonts of
the font. A subfont range specification contains two num-
bers and a file name. The numbers are the inclusive range
of characters covered by the subfont, and the file name
names an external file suitable for rdsubfontfile. The mini-
mum number of a covered range is mapped to character zero of
the corresponding subfont. If the subfont file name does
not begin with a slash, it is taken relative to the direc-
tory containing the font file. Each field must be followed
by some white space. Each numeric field may be C-format
decimal, octal, or hexadecimal.
External subfonts are represented in a more rigid format
that can be read and written using rdsubfontfile and
wrsubfontfile (see subfalloc(2)). The format for subfont
files is: a bitmap containing character images, followed by
a subfont header, followed by character information. The
bitmap has the format for external bitmap files described in
bitmap(6). The subfont header has 3 decimal strings: n,
height, and ascent. Each number is right-justified and
blank padded in 11 characters, followed by a blank. The
character info consists of n+1 6-byte entries, each giving
the Fontchar x (2 bytes, low order byte first), top, bottom,
left, and width. The x field of the last Fontchar is used
to calculate the bitmap width of the previous character; the
other fields in the last Fontchar are irrelevant.
SEE ALSO
graphics(2), bitblt(2), cachechars(2), subfalloc(2)
Page 1 Plan 9 (printed 10/25/25)