|
|
1.1 root 1: ------------------------
2: Version 3.3.2 7/7/92
3: ------------------------
4:
5: 1: Added UTF support for Plan 9. Only signigficant source code changes were
6: in dpost.utf (font.h, font.c, dpost.c). Added common/rune.[hc] so code
7: can be compiled elsewere. Remove RUNELIB in commmon/rune.h if fullrune(),
8: chartorune(), and runetochar() are available on your system. Original
9: DWB 3.3 dpost source is in directory dpost. You should select dpost or
10: dpost.utf in postscript.mk. Both compile and install a program called
11: dpost so don't pick both!
12:
13: 2: dpost can read old or UTF troff output. Default is whatever is assigned
14: to READING (file common/gen.h). You get one or the other, unless troff
15: tells dpost what encoding to use (currently x E UTF).
16:
17: 3: Most other translators passed bytes through and so only needed slightly
18: modified proglogues and a new encoding scheme (psencoding/UTF.enc). It
19: works for Latin1, but still needs a bit more attention. Prologue changes
20: were easy and only involved adding lines like,
21:
22: /show {show} bind def
23: /stringwidth {stringwidth} bind def
24:
25: Guarantees text procedures used in prologues aren't operators and can be
26: successfully redefined in UTF.enc. Unbinding means a small but probably
27: not noticeable speed penalty. You may not want to include those changes
28: on other system.
29:
30: 4: Operator redefinitions means dpost should work in it's own dictionary
31: (rather than userdict). Not implemented yet, but should be easy. Only
32: potential problem is with picture inclusion when dpost reads UTF.enc.
33:
34: ------------------------
35: Version 3.3.2 5/15/92
36: ------------------------
37:
38: 1: postio now outputs all unrecognized status reports - primarly for spooler
39: accounting purposes.
40:
41: 2: The makefiles also enable the selection of alternate stream module names
42: for streams based DKHOST support in postio.
43:
44: 3: dpost now assumes the optional fifth token in a font mounting command
45: (e.g. x font 2 R /usr/me/font/R) is the full pathname of the font. troff
46: outputs the pathname when a .fp request contains a third argument that
47: begins with a / as in .fp 1 R /usr/me/font/R.
48:
49: 4: By request Latin1's - character has been changed from minus to the smaller
50: hyphen character. Added \(dq and \(bs (for " and \ characters) to devpost
51: and devLatin1 tables. Also added \(!! and \(?? to devpost tables.
52:
53: 5: Helvetica-Light and Helvetica-LightOblique tables are included as HL and
54: HK in devpost and devLatin1, even though fonts aren't generally available.
55: Also copy H to HM during an install of devpost and devLatin1 tables.
56:
57: 6: LH and LV are horizontal and vertical AT&T logos from Matthijs Melchior
58: with slight adjustments to the scaling of "AT&T". Also adjusted LV so globe
59: sits on the baseline.
60:
61: 7: Included L1 and LA outlines in devpost and devLatin1. Adjusted LA scaling
62: so size of "AT&T" matches what's in LH and LV. Original PostScript came
63: from Matthijs Melchior.
64:
65: 8: Included the "symmetric clippath" version of roundpage.ps as Nroundpage.ps
66: in directory postscript/psfiles. Move it to roundpage.ps if you want it to
67: be the default.
68:
69: 9: Added a few lines of code to dpost for handling current implementation of
70: the portrait/landscape mode macros.
71:
72: 10: The man page for download now documents the -r option and notes that -p
73: is for Unix 4.0 lp.
74:
75: ------------------------
76: Version 3.3.1 4/30/91
77: ------------------------
78:
79: 1: buildtables stuff has been cleaned up and is now a user level command.
80: Uses shell.lib files that are installed with font tables. The devpost
81: tables were built on a version 47.0 PS-810. The devLatin1 tables were
82: built on a version 51.7 PS-820.
83:
84: 2: The devLatin1 tables provide support for the ISO Latin1 alphabet on
85: PostScript printers.
86:
87: 3: All translators support different text font encoding schemes using the
88: -E option and *.enc files installed in POSTLIB. The ISO Latin 1 alphabet
89: is supported with file /usr/lib/postscript/Latin1.enc.
90:
91: 4: printfont prints a table of the available (encoded) characters in one
92: or more PostScript fonts. It also understands the -E option.
93:
94: 5: grabit and hardcopy are two new programs that may be of interest to the
95: more serious PostScript programmer. grabit resembles ==, but produces
96: output that's usally easier to read. hardcopy redirects output from
97: PostScript file output operators (or procedures) to paper. It's useful
98: if you don't have direct access to a printer.
99:
100: 6: Prologues and programs are stored together. Other common PostScript files
101: are now in the psfiles directory.
102:
103: ------------------------
104: Verions 3.3 4/16/90
105: ------------------------
106:
107: 1: The package is now included in DWB. Version numbers are a bit misleading.
108: The one in postscript.mk refers to the DWB package.
109:
110: 2: dpost (and troff) now read ASCII font tables. makedev and the old binary
111: format are gone.
112:
113: 3: The devpost directory came directly from the DWB package. The font tables
114: originally distributed with this package are in directory devopost. They
115: are not installed. If possible we recommend you use the devpost tables.
116: The old tables can be installed by adding devopost to the TARGETS list in
117: file postscript.mk.
118:
119: 4: dpost recognizes two new fields in font tables. Entries for the full
120: PostScript font look like,
121:
122: fontname Times-Roman
123:
124: The fontname field is helps manage host resident fonts, the DocumentFonts
125: comment, and is used to define font name abbreviations like the ones in
126: dpost.ps. A font table entry that looks like,
127:
128: named in prologue
129:
130: disables the runtime abbreviation for the font - dpost assumes it's already
131: in the prologue.
132:
133: 5: Extra font tables included in DWB 3.0's devpost font collection are in
134: directory devpost.add. They included here, but should probably not be
135: used.
136:
137: 6: Bracket building has been fixed and tested on a wide range of PostScript
138: printers. It will likely still not work on many clones. Real problem
139: appears to be with Adobe's braceleftbt character.
140:
141: 7: Most of the special tuning code for device emulation has been removed.
142: Emulation still works, but there may be cases where it's not as good as
143: earlier versions.
144:
145: 8: Several problems with color and reverse video printing have been fixed.
146:
147: 9: buildtables directory has been cleanup up. The template files in directory
148: buildtables/devpost.data were used to build the devpost tables.
149:
150: 10: postplot and download are two new programs. postplot is for the System V
151: plot package only. Both were written for the Unix 4.0 lp package.
152:
153: 11: postgif is also relatively new - it came from Chi Choy.
154:
155: 12: The translators now rotate clockwise when printing in landscape mode. If
156: you want the old behavior set ROTATION to -1 in postscript.mk.
157:
158: 13: forms.ps has been cleaned up some. Better behavior when you print 2
159: landscape pages on one sheet.
160:
161: 14: Handling of Datakit code for System V has been changed some. Makefiles
162: now expect to find libdk.a and dk.h in standard places (e.g /usr/lib and
163: /usr/include). Set DKHOST to TRUE in postscript.mk to get Datakit support
164: on System V.
165:
166: If you're stuck and need to have things behave as they did in the past
167: take a look at file postio/postio.mk. Define DKHOSTDIR and uncomment
168: three lines and the behavior should be close to what it was.
169:
170: 15: Picture inclusion and color macros are gone. They're included in the DWB
171: package, and not here.
172:
173: ------------------------
174: Version 3.2 11/27/89
175: ------------------------
176:
177: 1: Implemented height and slant requests in dpost.
178:
179: 2: Modified the behavior of all translators so save objects are no longer left
180: on the stack. The original implementation was a mistake and occasionally
181: (e.g. picture inclusion with forms.ps) resulted in invalid restores.
182:
183: 3: Fixed the mistake in the external declaration of mesg in postio/slowsend.c.
184:
185: 4: The malloc() call in postdmd (routine dimensions()) is only made if patterns
186: is positive.
187:
188: 5: Changed definition of De in draw.ps so savematrix is loaded with the CTM
189: whenever De is executed. Original implementation didn't work with forms.ps
190: because the CTM is changed with each page image. (4/29/89)
191:
192: 6: Flush stdout when postio is invoked with the -t option - just convenient
193: not necessary. (4/30/89)
194:
195: 7: Included a man page for the picture inclusion macros - file man/mpictures.5.
196: (5/6/89)
197:
198: 8: Added BoundingBox code to dpost - still needs to go in other translators.
199: Most of the work is done in common/bbox.c. (5/7/89)
200:
201: 9: Fiddled with the bracket building stuff in dpost.ps so things finally look
202: decent. Was particularly bad on the typesetter.
203:
204: 10: dpost now generates a PageBoundingBox comment and ps_include.c accepts
205: the comment. Added -B option to enable/disable the BoundingBox calculations.
206: -Bon to enable and -Boff to disable. On by default now, but that may change.
207: Add similar code to the rest of the translators (6/20/89).
208:
209: 11: Fixed ps_include.c so it properly handles %%BeginGlobal and %%EndGlobal.
210: Added braces and compare page.start to page.end instead of 0.
211:
212: 12: Added xymove(hpos, vpos) for \X'PS ...' request - near the end of devcntrl().
213: Must output position info for following PostScript.
214:
215: 13: Added a call to endtext() immediately before the oput() call for \N'...'
216: requests. Without it spacing often messed up with -e2 but not -e0.
217:
218: ------------------------
219: Version 3.1 11/15/88
220: ------------------------
221:
222: 1: postio can run as one or two processes (-R option) and can establish an
223: interactive connection with a postscript printer (-i option). Parsing of
224: status reports has been improved. The status query mechanism can be disabled
225: using the -q option. An exit status of 1 implies a system error (eg. can't
226: open the line) while 2 usually means there was an error in the PostScript
227: file. By default postio runs as a single process. The -B, -R, and -q options
228: can be used to speed things up some. A version of the program (previously
229: supplied in postio.tmp) that can help if you seem to be having flow control
230: problems can be obtained using the -S option. It's not generally recommended
231: and should only be used as a last resort!
232:
233: 2: Several widthshow encoding schemes have been added to dpost and can reduce
234: print time by 20% or more. The method used to encode lines of text can be
235: changed on the command line using the -e option. Level 0 produces output
236: essentially identical to previous versions of dpost. The default can be
237: changed by modifying the definition of ENCODING in ./Makefile. At present
238: only level 0 is thoroughly tested, although level 2 (ie. -e2) may be the
239: default and is undoubtedly worth a try.
240:
241: 3: dpost now supports color selection and reverse video. Access in troff is via
242: the stand-alone macro package ./macros/color. Examples are,
243:
244: .so /usr/lib/macros/color
245: .CL red "this prints in red"
246: .CL "white on black" "and this prints white text on a black background"
247:
248: The postscript procedures that handle color and reverse video can be found
249: in ./postscript/color.ps. Additional colors can be added to the colordict
250: dictionary defined in ./postscript/color.ps.
251:
252: 4: The dpost drawing routines have been improved and have been moved from the
253: prologue (ie. ./postscript/dpost.ps) to ./postscript/draw.ps. That file is
254: only included if needed. Drawing routines now support the ability to group
255: a series of drawing commands together as a single path. May be useful for
256: future versions of pic that wish to fill regions with colors or gray levels.
257: Access is via the new "x X BeginPath" and "x X DrawPath" device control
258: commands. In addition there's some complicated PostScript code in file
259: ./postscript/baseline.ps, that can be used to set text along an arbitrary
260: curve. It's terribly confusing and I doubt anyone will have the patience to
261: bother to figure it out.
262:
263: 5: A simple picture packing troff preprocessor (picpack) has been included and
264: the code needed to recover pictures and text has been added to dpost. The
265: program is designed to supplement to the original picture inclusion mechanism,
266: and should ONLY be used when absolutely necessary. Using dpost to pull picture
267: files into a document is strongly recommended and will always be the more
268: efficient and portable approach. picpack simply provides a way to combine
269: pictures and text in a single file before dpost is executed. It may help in
270: a distributed printing environment where the user runs everything through
271: troff while a spooling daemon (eg. lp) handles the postprocessing. There
272: are serious disadvantages to this approach, with perhaps the most important
273: being that troff output files (when picpack is used) will likely result in
274: files that can no longer be reliably passed through other important post-
275: processors like proof.
276:
277: 6: Code to handle host resident PostScript fonts in dpost has been tested and
278: finally works. The -H option points dpost to a host resident font directory,
279: which by default is NULL. Host resident font files stored in that directory
280: must be assigned a name that corresponds to the one or two character troff
281: font name. Width tables must also be built (see buildtables/README), the new
282: binary font files must be installed in /usr/lib/font/devpost, and a mapping
283: definition from troff's name to the PostScript font name must be added to
284: ./postscript/dpost.ps.
285:
286: 7: The default pattern length in postdmd has been reduced to from 10 to 6 bytes.
287: Printers with fast processors (eg. PS-810s) often benefit from a further
288: reduction, while optimal performance on slower printers (eg PS-800s) may
289: require larger pattern sizes. The pattern length can be set using the -b
290: option. Increasing the pattern size usually increases the size of the output
291: file.
292:
293: 8: Line drawing in posttek and postbgi includes code that automatically ties
294: lines to device space coordinates when you select a non-zero width. Helps
295: eliminate the variation in line thickness that many observed. The default
296: line width in posttek and postbgi is still 0 (which gets 1 pixel). If you
297: want a different default change the definition of variable linewidth in files
298: ./postscript/posttek.ps and ./postscript/postbgi.ps.
299:
300: 9: Defocused lines in posttek have been fixed.
301:
302: 10: postbgi now supports color and can be used to translate most PRISM (color
303: BGI) jobs. Special device specific tuning needed for many PRISM jobs can be
304: enabled by using the -P"/prism true" option. Missing pieces (eg. subroutines)
305: needed for translating PRISM jobs, have also been implemented.
306:
307: 11: postreverse can reverse the pages in documents that conform to Adobe's 1.0
308: or 2.0 file structuring conventions, and it works with all the translators in
309: this package. The new version is backwards compatible, but files produced by
310: the new translators should not be passed through old versions of postreverse.
311: The likely result will be no output at all. If you choose to do a partial
312: installation put the new postreverse up first!
313:
314: 12: All translators attempt to conform to Adobe's Version 2.0 file structuring
315: conventions. dpost output falls short, but only in the interest of efficiency.
316: Passing dpost output through postreverse (perhaps with the -r option) produces
317: a minimally conforming PostScript file.
318:
319: 13: All the translators now support three options that pass arbitrary PostScript
320: through to the output file. The -P and -C options add a string and the
321: contents of a file respectively immediately after the prologue. It's assumed
322: whatever is added is legitimate PostScript - there is no checking. In each
323: case the added PostScript code becomes part of the job's global environment.
324:
325: The -R option can be used to request special action (eg. manualfeed) on a
326: global or page basis. The argument should be "request", "request:page", or
327: "request:page:file". If page is given as 0 or omitted the request applies
328: globally. If file is omitted the lookup is in /usr/lib/postscript/ps.requests.
329: The collection of recognized requests can be modified or extended by changing
330: /usr/lib/postscript/ps.requests.
331:
332: 14: PostScript code (from Johnathan Shopiro) that produces bolder versions of the
333: Courier fonts has been included in file postscript/fatcourier.ps. The file
334: can be added to individual prologue files (eg. dpost.ps) or pulled in as
335: needed using the -C option.
336:
337: 15: postmd is a new program that can be used to display a large matrix as a gray
338: scale image. May help if you're looking for patterns in a large matrix. A very
339: optimistic estimate suggests you can display up to a 600x600 matrix (with five
340: different shades of gray) on 300dpi printer using 8.5x11 inch paper.
341:
342: 16: What's available in buildtables has been cleaned up and works well with the
343: new version of postio. It can be used to have PostScript printers build troff
344: width tables for both printer and host resident fonts.
345:
346: 17: The PostScript bind operator has been applied to all procedures that are
347: expected to be executed more than once. Redefined save and restore procedures
348: are no longer needed and saverestore.ps is not included in this package.
349:
350: 18: The bizarre PostScript code used to get to the upper left corner of a page
351: in old versions of dpost.ps and postprint.ps has been replaced by something
352: that's at least slightly more comprehensible. All prologues have also been
353: changed so picture inclusion (eg. including a pic picture that's been run
354: through troff and dpost) should work better than previous versions. Still
355: missing (from most translators) is the %%BoundingBox comment and even when
356: it's put out (by postdmd) only the dimensions are correct - sorry!
357:
358: 19: The careless mistake in the DKHOST section of postio that some noticed belongs
359: to me (not Allan Buckwalter) and has now been fixed.
360:
361: 20: By default all prologues still use the current clipping path to determine page
362: dimensions, but that behavior can be disabled by setting boolean useclippath
363: (in each prologue) to false. In that case the page dimensions will be taken
364: from array pagebbox, which by default is initialized to 8x11 inch paper. The
365: -P options (in each translator) can change useclippth and pagebbox.
366:
367: 21: New in the misc directory is sample lp support from Maryann Csaszar and a
368: simple program that converts host resident font files obtained from a Macintosh
369: to a format that works on Unix.
370:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.