1 LISP LIBRARY PACKAGES MANUAL 1 LISP LIBRARY PACKAGES MANUAL FONTSAMPLE 1 INPUT/OUTPUT 1 F O N T S A M P L E 6 FONTSAMPLE provides a set of tools for generating Interpress masters for a font sampler, and is intended to allow the user to see what results on a printer when he or she specifies a font. This is useful because there may be several font substitutions between when a user specifies a font (for example in TEdit) and when a printer actually renders the font. For example, Lisp might substitute Terminal for Gacha, and the printer might substitute Modern for Terminal. The result will be that the user requests Gacha and gets Modern. The font sampler is intended to display these effects. The set of font mappings is a function of the local font substitutions in a particular workstation, the workstation's environment (what fonts are available to it at that time, if the font file server is temporarily unavailable), which printer is being printed to, and what font files are currently installed on the printer. Thus to find the cumulative effect of all font substitions at a given time, environment, and printer, the user should generate the Interpress masters (which reflect the environmental and Lisp mappings) and then send them to various printers (which reflect the printer mappings). (FNT.DISPTBLE STREAM FONT) [Function] This function prints a description of the font and characters 0 to 254 of the font specified by FONT on STREAM. Expects a letter-sized output stream. If used with FNT.MAKEBOOK below, PERPAGE should be one. (FNT.DISPLOOK STREAM FONT) [Function] This function prints a description of the font and representative characters of FONT on STREAM. If used with FNT.MAKEBOOK below, PERPAGE should be 18. (FNT.MAKEBOOK OUTFROOTNAME LISTOFFONTS PRINTFN PERPAGE) [Function] This function enumerates fonts across multiple output files. Multiple files are necessary because some printers cannot handle documents with many fonts. The function iterates over the fonts in LISTOFFONTS, invoking PRINTFN (which has arguments as in FNT.DISPLOOK) PERPAGE times per output file. The files are named OUTFROOTNAME with the page number concatenated at the end. If LISTOFFONTS is the atom ALL, then FONTSAVAILABLE is invoked for all Interpress fonts (this is an extremely slow operation). PRINTFN defaults to FNT.DISPLOOK, PERPAGE defaults to 18. Each font in LISTOFFONTS should be a FONTLIST. For example: (SETQ FONTLISTLIST (LIST '(MODERN 10 MRR 0 INTERPRESS) (CLASSIC 8 BRR 0 INTERPRESS))) (FNT.MAKEBOOK 'FOO FONTLISTLIST 'FNT.DISPTBLE 1) generates two files named FOO1 and FOO2 each containing output from one invocation of FNT.DISPTBLE. Thus FOO1 has a font table for (MODERN 10 MRR 0 INTERPRESS), FOO2 has a font table for (CLASSIC 8 BRR 0 INTERPRESS). Short sample masters for all currently supported Interpress fonts can be found in the Lisp Library with the names FONTSHEET1.IP, FONTSHEET2.IP ... FONTSHEET5.IP. These reflect the default Lisp font mappings as released by Xerox AIS (Koto release). These environmental mappings may change from release to release, so new masters should be printed for every release. (LIST ((PAGE NIL (PAPERSIZE Letter FOLIOINFO (ARABIC ) STARTINGPAGE# 245) (0 0 612 792) ((FOLIO NIL (PARALOOKS (QUAD RIGHT) CHARLOOKS (SUPERSCRIPT 0 INVISIBLE OFF SELECTPOINT OFF PROTECTED OFF SIZE 10 FAMILY MODERN OVERLINE OFF STRIKEOUT OFF UNDERLINE OFF EXPANSION REGULAR SLOPE REGULAR WEIGHT MEDIUM INVERTED OFF USERINFO NIL STYLE NIL) FORMATINFO (ARABIC )) (270 12 288 36) NIL) (HEADING NIL (HEADINGTYPE FOOTINGR) (54 27 558 36) NIL) (HEADING NIL (HEADINGTYPE RECTOHEAD) (54 762 558 36) NIL) (TEXT NIL NIL (54 54 504 618) NIL))) (PAGE NIL (PAPERSIZE Letter FOLIOINFO (ARABIC )) (0 0 612 792) ((FOLIO NIL (PARALOOKS (QUAD LEFT) CHARLOOKS (SUPERSCRIPT 0 INVISIBLE OFF SELECTPOINT OFF PROTECTED OFF SIZE 10 FAMILY MODERN OVERLINE OFF STRIKEOUT OFF UNDERLINE OFF EXPANSION REGULAR SLOPE REGULAR WEIGHT MEDIUM INVERTED OFF USERINFO NIL STYLE NIL) FORMATINFO (ARABIC )) (54 12 288 36) NIL) (HEADING NIL (HEADINGTYPE FOOTINGV) (54 27 558 36) NIL) (HEADING NIL (HEADINGTYPE VERSOHEAD) (54 762 558 36) NIL) (TEXT NIL NIL (54 54 504 684) NIL))) (PAGE NIL (PAPERSIZE Letter FOLIOINFO (ARABIC )) (0 0 612 792) ((FOLIO NIL (PARALOOKS (QUAD RIGHT) CHARLOOKS (SUPERSCRIPT 0 INVISIBLE OFF SELECTPOINT OFF PROTECTED OFF SIZE 10 FAMILY MODERN OVERLINE OFF STRIKEOUT OFF UNDERLINE OFF EXPANSION REGULAR SLOPE REGULAR WEIGHT MEDIUM INVERTED OFF USERINFO NIL STYLE NIL) FORMATINFO (ARABIC )) (270 12 288 36) NIL) (HEADING NIL (HEADINGTYPE FOOTINGR) (54 27 558 36) NIL) (HEADING NIL (HEADINGTYPE RECTOHEAD) (54 762 558 36) NIL) (TEXT NIL NIL (54 54 504 684) NIL))))) .ÌÌøø.Ì&øø.ÌÌø ø.ÌÌøø.ÌÌøø<ø PAGEHEADING VERSOHEAD<ø PAGEHEADING RECTOHEAD;ø PAGEHEADINGFOOTINGV;ø PAGEHEADINGFOOTINGR(ÔTERMINAL MODERN MODERNMODERN ?1(DEFAULTFONT 1 (GACHA 10) (GACHA 8) (TERMINAL 8))   HRULE.GETFN?1(DEFAULTFONT 1 (GACHA 10) (GACHA 8) (TERMINAL 8))   HRULE.GETFNMODERN   HRULE.GETFNMODERN   HRULE.GETFNMODERN  HRULE.GETFNMODERNOD  `J   O$ * Â  *- 3 q %7!1Úo     ddzº