home *** CD-ROM | disk | FTP | other *** search
- /*
- Copyright 1985, 1986, 1987, 1988, 1989, 1990, 1991 Chris Lewis
- All Rights Reserved
-
- See the LICENSE file for a full description of restrictions under which
- this software is provided.
-
- Function: PK Cache handler definitions
-
- */
-
- /* 2.2 91/02/20 */
-
- #if defined(PARTIAL) || defined(INCR)
- /*
-
- if defined(PARTIAL):
-
- This defines a table of bit maps for the "normal" (N),
- "symbol" (S) and overide (digit fonts > 3) indicating which
- characters in the font are "useful". This is built during
- Prolog (which is after the ljStdFont/ljSymFont arrays are modified
- by any overrides in the *.fonts file), by examining the
- lj*Font arrays and seeing which characters are actually used.
- This is "partial" downloading, *not* incremental.
-
- if defined(INCR):
-
- This defines a table of bit maps for *each* mentioned font at
- *each* pointsize, where the bit being on indicates whether the
- character has been downloaded *yet*.
- */
-
- #define ETYP long
- #define ELEN (sizeof(ETYP) * 8) /* length in bits of an ETYP */
- #define MASKLEN ((256 - (' ' * 2) + (ELEN - 1)) / ELEN)
-
- #define NPTSIZE 15
-
- struct needmaps {
- int fontnum;
- ETYP nm[MASKLEN];
- struct needmaps *next;
- };
-
- #define NMAP(x) nm[x]
-
- extern struct needmaps *needmaps;
-
- #ifdef INCR
- struct downmaps {
- ETYP *nm[NPTSIZE];
- int lastpage[NPTSIZE];
- struct pkp *pkfont[NPTSIZE];
- };
- #endif
-
- #define DMAP(x,p) nm[p][x]
- #endif
-