LUC DEVROYE'S POSTSCRIPT PAGE

What is PostScript? PostScript is a page description programming language invented by John Warnock and Chuck Geschke, founders of Adobe Systems Incorporated. It is perhaps the most versatile and loved language for printers, being used in printers world-wide. It is capable of drawing to computer screens and any kind of drawing device. PostScript is interpreted, stack based and has latent typing.

The language. There are a number of sites offering tutorials, FAQs and examples of the PostScript language. These include on-line versions of all programs in the blue and green books, and in Glenn Reid's book. There are also essays on the history of PostScript.

The newsgroups. Check comp.lang.postscript and comp.sources.postscript.

GhostScript. GhostScript is a tool for working for PostScript files and rendering them on various devices such as screens and printers. It interprets the Postscript language, and comes with all source code in C, free of charge. This mammoth job was accomplished by L. Peter Deutch of Aladdin Enterprises. Mail to ghost@aladdin.com. Address: 203 Santa Margarita Ave., Menlo Park, CA 94025. His web page. I compiled a brief list of GhostScript-related web sites, including links to Thomas Merz's book.

PostScript web sites. I also collected a variety of links to PostScript web sites. Some of these have further links. Others offer examples and demos of PostScript code. There are also links to some PostScript gurus, and to PostScript shortcomings (its inability to draw a perfect circle, for example).

Postscript to ... filters. Filters from PostScript to another format: a list of web sites offering free or commercial programs to convert PostScript to html, gif, jpg, pdf, tgif, frame, xfig, gnuplot, cgm, lwo, rib, rpl, java applet, (ascii) text, wemf, ppm (bitmap), mif, wpg, metafont. Pieces of code are also provided for creating antialiased gif files by trickery based on ghostscript.

... to Postscript filters. Filters from another format to PostScript: a list of web sites offering free or commercial programs to convert many formats to PostScript. Of course, most applications, in the last step before printing, inherently produce PostScript files, so there are many pieces of code out there to achieve this goal. The links collected here include conversions from metapost, tiff, jpg, wmf, hpgl, bmp, gif, art, dxf, (ascii) text, dvi, metafont and html to PostScript. Most deal with ascii text of course.

PDF. PDF is Adobe's newest format for storing documents. Files usually have the suffix ".pdf". The newest generation of printers accepts these files (as well as raw PostScript files), but sometimes a filter pdf2ps is required to make a PostScript file. These PostScript files are often huge and unwieldy, so be warned! PDF does not have the elegance and simplicity of PostScript. It required commercial software (AcrobatDistiller) for the creation of pdf files, but ghostscript (free) can now also do that job. The screen reader and printing utility, AcrobatReader, is free. Personally, I hope that pdf will never take off, and that Adobe will opt instead to make the good old PostScript more universal. Here are some PDF-related links.

PostScript utilities. I compiled a bunch of links to PostScript utilities.

EPS. Encapsulated PostScript is a PostScript-like format with special properties. These links lead you to the specs, a tutorial, and some utilities.

GX. Another graphics and typesetting format, GX. Some links. I am considering dropping the maintenance of this section, because of the decline of the popularity of GX.

GNU sites. GNU is great! In the GNU project, a multitude of software is written from scratch, tested to death, and given away for free (under the GNU license). There are PostScript and font tools in there, and it is thus useful to know where to turn to for this software. List of GNU sites.

Bibliography. Finally, you are invited to consult my bibliograhy on type, fonts and postscript.

Contact and Copyright

Luc Devroye
School of Computer Science
McGill University
Montreal, Canada H3A 2K6
luc@cs.mcgill.ca
http://luc.devroye.org