diff options
Diffstat (limited to 'Build/source/texk/seetexk/tfm.h')
-rw-r--r-- | Build/source/texk/seetexk/tfm.h | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/Build/source/texk/seetexk/tfm.h b/Build/source/texk/seetexk/tfm.h deleted file mode 100644 index 9a50657e873..00000000000 --- a/Build/source/texk/seetexk/tfm.h +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Copyright (c) 1987, 1989 University of Maryland - * Department of Computer Science. All rights reserved. - * Permission to copy for any purpose is hereby granted - * so long as this copyright notice remains intact. - */ - -/* - * TFM file information. - */ - -/* - * TFM files start with a series of unsigned 16 bit integers. We - * read this into the structure `tfm_header'. These are type i32 - * so that they may be used as integer quantities without concern - * as to sign extension. - */ -struct tfmheader { - i32 th_lf; /* length of the file (16 bit words) */ - i32 th_lh; /* length of the header data (words) */ - i32 th_bc; /* beginning character */ - i32 th_ec; /* ending character (inclusive) */ - i32 th_nw; /* number of words in width table */ - i32 th_nh; /* number of words in height table */ - i32 th_nd; /* number of words in depth table */ - i32 th_ni; /* words in italic correction table */ - i32 th_nl; /* words in ligature/kern table */ - i32 th_nk; /* words in kern table */ - i32 th_ne; /* words in extensible character table */ - i32 th_np; /* number of font parameter words */ -}; - -/* - * The remainder of the TFM file comprises the following information, - * all of which are 32 bit quantities: - * - * header: array [0..lh-1] of stuff - * char_info: array [bc..ec] of char_info_word - * width: array [0..nw-1] of fix_word - * height: array [0..nh-1] of fix_word - * depth: array [0..nd-1] of fix_word - * italic: array [0..ni-1] of fix_word - * lig_kern: array [0..nl-1] of lig_kern_command - * kern: array [0..ne-1] of extensible_recipie - * param: array [0..np-1] of fix_word - */ - -/* - * A char_info_word is built of four unsigned eight-bit quantities. The first - * is an index into the width table (this saves 24 bits for every - * character that has the same width as another character). The - * second is a composite height and depth index. The third is a - * composite italic index and tag, and the fourth is a remainder. - * - * XXX needs explaining - */ -struct char_info_word { - char ci_width; /* width index */ - char ci_h_d; /* height and depth index */ - char ci_i_t; /* italic index and tag */ - char ci_remainder; /* ??? */ -}; - -/* - * These macros split up h_and_d and i_and_t values. - */ -#define T_CI_H(ci) (((ci)->ci_h_d >> 4) & 0xf) -#define T_CI_D(ci) ((ci)->ci_h_d & 0xf) -#define T_CI_I(ci) (((ci)->ci_i_t >> 2) & 0x3f) -#define T_CI_T(ci) ((ci)->ci_i_t & 3) - -/* - * This structure contains everything one might need to know about - * a TFM file at run-time. - * - * XXX incomplete, or wrong, as yet - */ -struct tfmdata { - struct tfmheader t_hdr; /* full header */ - struct char_info_word *t_ci; /* char info */ - i32 *t_width; /* widths table */ - i32 *t_height; /* heights */ - i32 *t_depth; /* depths */ -}; |