AT&T UNIX™PC Unix System V Users Manual - tenox
AT&T UNIX™PC Unix System V Users Manual - tenox AT&T UNIX™PC Unix System V Users Manual - tenox
FONT ( 4 ) (AT&T UNIX PC only ) FONT ( 4) NAME font - font file format DESCRIPTION A font is a collection of 96 variably-sized graphics. A font exists first on disk as a "font file." Font files are loaded into the kernel via the WIOCLFONT (see window(1)) or SYSL_LFONT (see syslocal(2)) ioctl . Each font file has three sections: first, a header containing information about the font as a whole; second, a 96entry table describing each of up to 96 characters in the font; and third, a variable number of "minirasters," each an array of 16-bit words containing the pixel definition of each character. The font file format is given below: #define FMAGIC 0616 #define FNTSIZE 96 struct fntdef { long unsigned char char char char char struct f cdef unsigned short }; }; /* font magic number *I /* size of a font *I ff_magic; ff_flags; ff_hs; ff_vs; ff_baseline; ff_dummy [ 26] ; ff_fc[FNTSIZE]; ff_raster; j* magic number *I /* flags *I /* hor spacing *I I* ver spacing *I /* baseline *I /* padding *I I* char defs *I /* minirasters *I struct fcdef I* font character definition *I { char char char char char char short fc_hs; fc_vs; fc_ha; fc_va; fc_hi; fc_vi; fc_mr; /* horiwntal size in bits *I /* vertical size *I I* horizontal adjust (signed) *I I* vertical adjust (signed) *I I* horizontal increment * I /* vertical increment *I /* relative mini-raster pointer *I Each mini-raster is dealt with as 16-bit words; hence it must be word-aligned, and consist of fc_hs raster lines each of which contains an integral number of 16-bit data words. The actual position of upper-left corner of miniraster is ( curx + fc_ha, cury + fc_va ) . Every word of mini-raster information is stored HIGH byte first, a Ia mc68000. The low order bit of the first word is the leftmost raster point. Bit-0 of the first word thus corresponds to the upper- left corner of the character. The actual bit pattern of a character is flush left in its mini-raster. The bits to the right of the pattern (i.e. to the right of fc_hs ) and before the short boundary must be 0. Normally, fc_va is negative, thus implying that coordinate (0, 0) is upper left. - 1 -
- Page 1015: TRIG ( 3M ) TRIG ( 3M) NAME sin, co
- Page 1018 and 1019: TSEARCH ( 3C ) TSEARCH ( 3C ) data
- Page 1021: TTYNAME ( 3C ) TTYNAME ( 3C ) NAME
- Page 1025 and 1026: UNGETC ( 3S ) UNGETC ( 3S ) NAME un
- Page 1027 and 1028: VPRINTF ( 3S ) VPRINTF ( 3S ) NAME
- Page 1029 and 1030: WIND ( 3T ) ( AT&T UNIX PC only ) W
- Page 1031 and 1032: WRASTOP ( 3T ) ( AT&T UNIX PC only
- Page 1033: INTRO ( 4) INTRO ( 4) NAME intro -
- Page 1036 and 1037: A.OUT ( 4) A.OUT ( 4) data segment
- Page 1038 and 1039: A.OUT (4) A.OUT (4) char n_numaux;
- Page 1041 and 1042: ADF ( 4) (AT&T UNIX PC only ) ADF (
- Page 1043 and 1044: ADF ( 4 ) (AT&T UNIX PC only ) \ \
- Page 1045 and 1046: ADF ( 4) (AT&T UNIX PC only ) FORMA
- Page 1047 and 1048: ADF (4) (AT&T UNIX PC only ) ADF (4
- Page 1049 and 1050: ADF (4) (AT&T UNIX PC only ) ADF (
- Page 1051 and 1052: ADF ( 4) (AT&T UNIX PC only ) ADF (
- Page 1053 and 1054: ADF ( 4 ) (AT&T UNIX PC only ) Toke
- Page 1055 and 1056: AR( 4 ) AR ( 4) NAME ar - common ar
- Page 1057: CHECKLIST ( 4 ) CHECKLIST ( 4 ) NAM
- Page 1060 and 1061: I I I I I I II I I I I I I I I I I
- Page 1063 and 1064: Dffi ( 4 ) Dffi ( 4 ) NAME dir - fo
- Page 1065: FILEHDR (4) (not. on PDP-11) FILEHD
- Page 1069 and 1070: FONT ( 4) (AT&T UNIX PC only ) FONT
- Page 1071 and 1072: FS (4) FS (4) NAME file system - fo
- Page 1073 and 1074: FS (4) FS (4) immaterial. The value
- Page 1075 and 1076: FSPEC ( 4) FSPEC ( 4) NAME fspec -
- Page 1077 and 1078: GETTYDEFS ( 4 ) GETTYDEFS ( 4) NAME
- Page 1079 and 1080: GROUP ( 4) GROUP ( 4) NAME group -
- Page 1081 and 1082: INITTAB { 4 ) INITTAB ( 4 ) NAME in
- Page 1083 and 1084: INITT AB ( 4 ) INITT AB ( 4 ) FILES
- Page 1085 and 1086: !NODE ( 4) NAME inode - format of a
- Page 1087: ISSUE ( 4) ISSUE ( 4) NAME DESCRIPT
- Page 1090 and 1091: LDFCN( 4) LDFCN ( 4) ldfhread(3X) r
- Page 1093: LINENUM ( 4) LINENUM ( 4) NAME line
- Page 1096 and 1097: MASTER ( 4) Field 1: Field 2: MASTE
- Page 1099 and 1100: PASSWD ( 4 ) PASSWD ( 4 ) NAME pass
- Page 1101 and 1102: PHONE ( 4) (AT&T UNIX PC Only ) PHO
- Page 1103 and 1104: PHONE ( 4) (AT&T UNIX PC Only ) PHO
- Page 1105: PNCH ( 4) PNCH(4) NAME pnch - file
- Page 1109 and 1110: RELOC ( 4) RELOC ( 4) NAME reloc -
- Page 1111 and 1112: RELOC ( 4) RELOC ( 4) R_PCRLONG A "
- Page 1113 and 1114: � I SCCSFILE ( 4) SCCSFILE ( 4 )
- Page 1115 and 1116: SCCSFILE ( 4) SCCSFILE ( 4) get com
FONT ( 4 ) (AT&T UNIX PC only ) FONT ( 4)<br />
NAME<br />
font - font file format<br />
DESCRIPTION<br />
A font is a collection of 96 variably-sized graphics. A font exists<br />
first on disk as a "font file." Font files are loaded into the kernel<br />
via the WIOCLFONT (see window(1)) or SYSL_LFONT (see syslocal(2))<br />
ioctl . Each font file has three sections: first, a header<br />
containing information about the font as a whole; second, a 96entry<br />
table describing each of up to 96 characters in the font; and<br />
third, a variable number of "minirasters," each an array of 16-bit<br />
words containing the pixel definition of each character. The font<br />
file format is given below:<br />
#define FMAGIC 0616<br />
#define FNTSIZE 96<br />
struct fntdef<br />
{<br />
long<br />
unsigned char<br />
char<br />
char<br />
char<br />
char<br />
struct f cdef<br />
unsigned short<br />
};<br />
};<br />
/* font magic number *I<br />
/* size of a font *I<br />
ff_magic;<br />
ff_flags;<br />
ff_hs;<br />
ff_vs;<br />
ff_baseline;<br />
ff_dummy [ 26] ;<br />
ff_fc[FNTSIZE];<br />
ff_raster;<br />
j* magic number *I<br />
/* flags *I<br />
/* hor spacing *I<br />
I* ver spacing *I<br />
/* baseline *I<br />
/* padding *I<br />
I* char defs *I<br />
/* minirasters *I<br />
struct fcdef I* font character definition *I<br />
{<br />
char<br />
char<br />
char<br />
char<br />
char<br />
char<br />
short<br />
fc_hs;<br />
fc_vs;<br />
fc_ha;<br />
fc_va;<br />
fc_hi;<br />
fc_vi;<br />
fc_mr;<br />
/* horiwntal size in bits *I<br />
/* vertical size *I<br />
I* horizontal adjust (signed) *I<br />
I* vertical adjust (signed) *I<br />
I* horizontal increment * I<br />
/* vertical increment *I<br />
/* relative mini-raster pointer *I<br />
Each mini-raster is dealt with as 16-bit words; hence it must be<br />
word-aligned, and consist of fc_hs raster lines each of which contains<br />
an integral number of 16-bit data words. The actual position<br />
of upper-left corner of miniraster is ( curx + fc_ha, cury + fc_va<br />
) . Every word of mini-raster information is stored HIGH byte<br />
first, a Ia mc68000. The low order bit of the first word is the leftmost<br />
raster point. Bit-0 of the first word thus corresponds to the<br />
upper- left corner of the character.<br />
The actual bit pattern of a character is flush left in its mini-raster.<br />
The bits to the right of the pattern (i.e. to the right of fc_hs ) and<br />
before the short boundary must be 0. Normally, fc_va is negative,<br />
thus implying that coordinate (0, 0) is upper left.<br />
- 1 -