Changes since v. 1.01: ---------------------- 11-Jun-85 (nmh) - Spacing problems in long strings (demonstrated by Les Earnest's "taste test" trial. - changed to output char spacing width as a floating point number, rather than as an integer rounded to pixels. This was causing problems in spacings of long strings of characters - the truncation errors were accumulating. 12-Jun-85 Changed to process DVI pages in reverse order. That way, they come out stacked in correct order. Added "-r" option to defeat this. 13-Jun-85 reduced size of arrays in PS dictionaries to 128 entries (saves 2K bytes in LaserWriter per font) 13-Jun-85 SetFntNum wasn't always getting called on first pass through the DVI page (fixed at opcodes FNT1..FNT4). If -p (no preload) option is given, we MUST process DVI pages in forward order, thus this option forces "-r" option. Changed help file for -r option. With -p option (no preload), font files were getting loaded and opened more often than necessary. added fn HasBeenRead(). Warn about ignored magnifications. 14-Jun-85 Changed to emit font-dictionary-creating command just before the first character bitmap of that font gets output. This allows more pages to be printed when you extract a subrange of the DVI file, as fonts not referred to in thos pages will not be created. I guess this also makes the -p option less (not?) necessary. Added -m0, -mh, -m1, -m2, -m3, -m4 options to specify magnifications in terms of magsteps. 17-Jun-85 In EmitChar() changed the following line: sl = (unsigned char *)(ce.where.pixptr + i*nwpl); to: sl = (unsigned char *)(ce.where.address.pixptr + i*nwpl); How did that ever work??!!?? In DecodeArgs(), removed call to tolower() -- replaced with direct code. These two were from Furuta, and from compiling on Vax. 18-Jun-85 Was not handling missing fonts properly - would forget to create a dictionary, then later would expect to make that forgotten dictionary the current font. Fixed by adding code to completely ignore characters pertaining to missing fonts (in SetFntNum(), SetChar(), SetString()) -- the intent is to leave the proper size gaps in the document. 19-Jun-85 Trivial change to the way hex values of bytes written. Got rid of silly big table (a Lisa with MacWorks didn't build it correctly).