aboutsummaryrefslogtreecommitdiff
path: root/man/man7/font.7
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2005-01-03 06:40:20 +0000
committerrsc <devnull@localhost>2005-01-03 06:40:20 +0000
commit058b0118a52061ad57694c01fc8763b22b789c4d (patch)
tree6685f04dea5ed68edaa34998c976aed34c55fe94 /man/man7/font.7
parent2600337aa704efbeba8201e88147a764b4fd2b90 (diff)
downloadplan9port-058b0118a52061ad57694c01fc8763b22b789c4d.tar.gz
plan9port-058b0118a52061ad57694c01fc8763b22b789c4d.tar.bz2
plan9port-058b0118a52061ad57694c01fc8763b22b789c4d.zip
Some man pages.
Diffstat (limited to 'man/man7/font.7')
-rw-r--r--man/man7/font.787
1 files changed, 87 insertions, 0 deletions
diff --git a/man/man7/font.7 b/man/man7/font.7
new file mode 100644
index 00000000..f651a58a
--- /dev/null
+++ b/man/man7/font.7
@@ -0,0 +1,87 @@
+.TH FONT 7
+.SH NAME
+font, subfont \- external format for fonts and subfonts
+.SH SYNOPSIS
+.B #include <draw.h>
+.SH DESCRIPTION
+Fonts and subfonts are described in
+.IR cachechars (3).
+.PP
+External fonts are described by a plain text file that can be read using
+.IR openfont .
+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, both in pixels.
+The height is the inter-line spacing and the ascent is the distance
+from the top of the line to the baseline. These numbers are chosen
+to display consistently all the subfonts of the font.
+A subfont range specification contains two or three numbers and a file name.
+The numbers are the inclusive range of characters covered by the subfont,
+with an optional starting position within the subfont,
+and the file name names an external file suitable for
+.I readsubfont
+(see
+.IR graphics (3)).
+The minimum number of a covered range is mapped to the specified starting position
+(default zero) of the
+corresponding subfont.
+If the subfont file name does not begin with a slash, it is taken relative to the
+directory containing the font file.
+Each field must be followed by some white space.
+Each numeric field may be C-format decimal, octal, or hexadecimal.
+.PP
+External subfonts are represented in a more rigid format
+that can be read and written using
+.I readsubfont
+and
+.I writesubfont
+(see
+.IR subfont (3)).
+The format for subfont files is: an image containing character glyphs,
+followed by a subfont header, followed by character information.
+The image has the format for external image files described in
+.IR image (7).
+The subfont header has 3
+decimal strings:
+.BR n ,
+.BR height ,
+and
+.BR ascent .
+Each number is right-justified and blank padded in 11 characters, followed by a blank.
+The character
+.B info
+consists of
+.BR n +1
+6-byte entries, each giving the
+.B Fontchar
+.B x
+(2 bytes, low order byte first),
+.BR top ,
+.BR bottom ,
+.BR left ,
+and
+.BR width .
+The
+.B x
+field of the last
+.B Fontchar
+is used to calculate the image width
+of the previous character; the other fields in the last
+.B Fontchar
+are irrelevant.
+.PP
+Note that the convention of using the character with value zero (NUL) to represent
+characters of zero width (see
+.IR draw (3))
+means that fonts should have, as their zeroth character,
+one with non-zero width.
+.SH FILES
+.TF /lib/font/bit/*
+.TP
+.B /lib/font/bit/*
+font directories
+.SH "SEE ALSO"
+.IR graphics (3),
+.IR draw (3),
+.IR cachechars (3),
+.IR subfont (3)