Background information for new users of Ghostscript

## Table of contents

> - An overview of Ghostscript
>   - How is Ghostscript licensed? Where can I find it?
>     - Aladdin Ghostscript
>     - GNU Ghostscript
>     - Commercial versions
>   - Libraries obtained from other parties
>   - What if I want support?
>   - What about commercial use?
>   - What platforms does Ghostscript run on?
>     - Ports done by users
> - Related work
>   - PDF encryption
>   - Previewers
>     - Previewers for X Windows
>     - Previewers for DOS and MS Windows
>     - A previewer for Linux
>   - Fonts
>   - Ancillary programs
> - If you need help
>   - Reporting problems
> - Contacting Aladdin Enterprises
> - How you can help improve Ghostscript
> - Acknowledgements

For other information, see the Ghostscript overview.

# An overview of Ghostscript

Ghostscript is the name of a set of software that provides:

- An interpreter for the PostScriptTM language and the Adobe Portable Document Format (PDF -- sometimes confused with Acrobat, Adobe's PDF browser and editor product);
- Input modules (utilities) for reading a variety of raster formats, including CMYK, GIF, JFIF (JPEG), MIFF, PBM/PGM/PPM, and PCX;
- Output modules (drivers) for a wide variety of window systems (including X Windows and Microsoft Windows), raster file formats, and printers, as well as a PDF output module that implements functions similar to Adobe's AcrobatTM DistillerTM product; and
- The Ghostscript library, a set of procedures to implement the graphics and filtering capabilities that are primitive operations in the PostScript language and in PDF.

In simple terms, this means that Ghostscript can read a PostScript or PDF file and display the results on the screen or convert them into a form you can print on a non-PostScript printer. Especially together with several popular previewers, with Ghostscript you can view or print an entire document or even isolated pages, even if your computer doesn't have Display PostScript and your printer doesn't handle PostScript itself.

## How is Ghostscript licensed? Where can I find it?

Ghostscript is a copyrighted work (Aladdin Enterprises owns the copyright); it is not shareware or in the public domain. Different versions of it are distributed with three different licenses:

### Aladdin Ghostscript

Versions entitled "Aladdin Ghostscript" are distributed with a license called the Aladdin Free Public License that allows free use, copying, and distribution by end users, but does not allow commercial distribution. You can get the current version of Aladdin Ghostscript with this license from

> ftp://ftp.cs.wisc.edu/ghost/aladdin/gs###/ghostscript#.##

or under AFS by direct reference to

> /afs/cs.wisc.edu/public/ghost/aladdin/gs###/ghostscript#.##

where "#.##" and "###" are the version number with and without punctuation, for instance "5.50" and "550". You can also search for ftp access to Ghostscript at other sites, perhaps nearer your site, using an ftp search service such as

> http://ftpsearch.lycos.com/

General search engines like

> http://www.altavista.com/
> http://www.google.com/

may also be useful, but in searching for files they are likely to provide many unusable references mixed in among the useful ones.

If you haven't convenient access to the Internet, you can order Aladdin Ghostscript on a CD along with some useful related programs and documentation. Please note that this is not "commercial licensing": you are still getting freely redistributable software, with no support and no warranty. For more information write to Russell Lang or see

> http://www.cs.wisc.edu/~ghost/cd.html

### GNU Ghostscript

Versions entitled "GNU Ghostscript" are distributed with the GNU General Public License, which allows free use, and free copying and redistribution under certain conditions (including, in some cases, commercial distribution). GNU Ghostscript versions are usually released shortly after the next Aladdin Ghostscript version; for example, GNU Ghostscript 5.10 was released shortly after Aladdin Ghostscript 5.50. You can always get the current version of GNU Ghostscript by Internet FTP from

> ftp://ftp.cs.wisc.edu/ghost/gnu/gs###/ghostscript#.##

or under AFS by direct reference to

> /afs/cs.wisc.edu/public/ghost/gnu/gs###/ghostscript#.##

or from any of the many GNU distribution sites. The GNU home ftp site is

> ftp://ftp.gnu.org/pub/gnu/

For a more complete list of sites, including sites outside the U.S., write to gnu@gnu.org. The Free Software Foundation makes GNU Ghostscript available on tape and CD-ROM.

Both Aladdin and GNU versions are also available from sites in the Comprehensive TeX Archive Network (CTAN), in a tree based at /tex-archive/support/ghostscript/, which you can find at these principal CTAN distribution sites ("participating hosts") as of mid-1998:

> ftp://ctan.tug.org/tex-archive/support/ghostscript/ |  | Massachusetts, U.S.A.
> ftp://ftp.dante.de/tex-archive/support/ghostscript/ |  | Deutschland
> ftp://ftp.tex.ac.uk/tex-archive/support/ghostscript/ |  | United Kingdom

CTAN has more than fifty mirror sites around the world. For information about CTAN sites, including how to use them over the World Wide Web, get the file `CTAN.sites` from any CTAN server, for instance

> ftp://ctan.tug.org/tex-archive/CTAN.sites

### Commercial versions

Finally, Ghostscript is also available for commercial licensing. See "What about commercial use?" for details.

Aladdin Ghostscript and GNU Ghostscript come with NO WARRANTY and NO SUPPORT. If you have a question or a problem to report, please see "If you need help" for information about what to do.

## Libraries obtained from other parties

The Ghostscript source code distribution, and the Ghostscript executable code, include libraries obtained from other parties. All the source files mentioned in this section are in the Ghostscript and third-party library source kits. The documentation of how to build Ghostscript tells where to get these libraries and how to unpack them.

> The Independent JPEG Group (IJG) library
>   The executable versions of Ghostscript are based in part on the work of the Independent JPEG Group. For more information, see `jpeg.mak` in the main Ghostscript source directory and `README` in the `jpeg` subdirectory of the Ghostscript source code
> The Portable Network Graphics (PNG) library created by Dave Martindale, Guy Eric Schalnat, Paul Schmidt, and Tim Wegner, of Group 42, Inc.
>   For more information, see `libpng.mak` in the main Ghostscript source directory, and `README` and `png.h` in the `libpng` subdirectory of the Ghostscript source code.
> The zlib library created by Jean-loup Gailly and Mark Adler
>   For more information, see `zlib.mak` in the main Ghostscript source directory, and `README` in the `zlib` subdirectory of the Ghostscript source code.

These libraries do NOT fall under either the GNU License or the Aladdin Free Public License; they come with their own licenses, which also allow free use and redistribution under appropriate circumstances and which appear in the files mentioned just above. These libraries are entirely original works of their respective authors, and are provided AS IS with NO WARRANTY and NO SUPPORT.

## What if I want support?

Neither Aladdin Enterprises nor any organization known to us currently offers Ghostscript support for end-users -- that is, for people or companies who just want to use Ghostscript and not redistribute it as part of a product. Companies that include Ghostscript in their products under a commercial license (see next section) may offer support to end-users, but it would be support for the company's own product, not for Ghostscript per se.

Nothing in the GNU or Aladdin Free licenses prevents anyone from providing support for Ghostscript, either free or commercial. Aladdin would be happy to include in the Ghostscript documentation the contact information for anyone who wants to offer such support.

## What about commercial use?

GNU Ghostscript may not be incorporated into commercial products which forbid copying or for which customers cannot obtain source code for no more than the cost of reproduction, although it may be distributed ("aggregated") with commercial products; Aladdin Ghostscript may not be incorporated into commercial products at all, and may be distributed commercially only under extremely limited circumstances. However, Ghostscript is also available for commercial licensing, which in addition to the right to incorporate Ghostscript into commercial products includes support, a limited warranty, high-quality fonts, and other benefits. For more information about commercial licensing of Ghostscript, please contact Aladdin Enterprises' commercial distribution partner, the only entity legally authorized to distribute Ghostscript per se on any terms other than the GNU or Aladdin free licenses:

Artifex does not offer commercial support as a separate service; support is available only to OEM licensees (that is, licensees who redistribute Ghostscript in a product).

## What platforms does Ghostscript run on?

Ghostscript is written entirely in C (with some optional assembly-language accelerators for DOS platforms), with special care taken to make it run properly on systems of either byte order ("low-endian" and "high-endian") and of various word lengths. GNU Ghostscript is known to run on the following platform families:

- A wide variety of Unix systems using X Windows version 11, releases 4, 5, and 6, including
  - Sun-3, Sun-4, Sun-386i, Sun SPARCStation with SunOS 4 and Solaris 2.[56]
  - Generic Intel-based systems running Linux, 386/ix, 386BSD, FreeBSD, ISC Unix, SCO Unix, and Solaris
  - H-P 9000/300 and 9000/800
  - DECStation 2100, 3100, and 5xxx
  - Alpha systems running Digital Unix
  - VAX running Ultrix
  - Sequent Symmetry
  - Convex C1 and C2
  - Tektronix 4300
  - SGI Iris Indigo
  - 4.4BSD Unix systems (FreeBSD on Intel)
  - NetBSD on Intel, Sun SPARC, Motorola M68K (Apple, Amiga, Sun, H-P), and VAX
- Sun workstations running SunView
- VAX and Alpha systems running OpenVMS with X11 compiled with either DEC C or gcc

Aladdin Ghostscript is known to run on all of the above, and additionally on the following platform families:

- IBM PC and compatibles with EGA, VGA, SuperVGA, or compatible graphics under MS-DOS 3.1, 3.3, 5.0, or 6.22, and Microsoft Windows 3.1, NT, 95, or 98;
- IBM PC and compatibles under DR DOS 6.0;
- IBM PC and compatibles under OS/2 2.0, 2.1 and Warp 3.0.
- Apple Macintosh with System 7 or later, both Motorola 680x0 and PowerPC native. For specific information on the Macintosh implementation, see

  > http://www.cs.wisc.edu/~ghost/mac/

It is very likely that Ghostscript will run under other versions of DOS, and other versions of Unix that support X11, but it has not been tested in these environments. (Ghostscript does not run well on PC-compatibles with Hercules display cards, since text and graphics output interfere with each other, but you can work around this by redirecting the text output to a file.)

### Ports done by users

Ghostscript has been ported to a number of platforms by users, who are willing to be contacted about problems on those specific platforms:

NeXT
  For information and possibly precompiled binaries for NeXT machines, contact Alan Barclay in the U.K. at +44-1224-591779 (voice and fax).

Amiga
  For information on a port to the Amiga, contact Andreas Maschke <epgbc@cluster6.urz.uni-halle.de>. This port includes drivers by Andreas Heitmann for

  > IFF |  | file format
  > RETINA |  | graphics board
  > INTUI |  | Amiga window system

SMS/QDOS
  For information on a port to the SMS/QDOS operating system, contact

  The Web site has precompiled binaries, and the port includes includes drivers for:

  > pic: |  | native graphics format |  | (PIC, 1-, -2, 4-, 8-colour formats)
  > qfax: |  | fax files |  | (1D, 2D normal and fine)

Plan 9
  For source boddles and precompiled binaries for the operating system Plan 9 from Bell Labs, contact Nigel Roles <ngr@cotswold.demon.co.uk>. or check

  > http://www.cotswold.demon.co.uk/dist/gs/

MS-DOS
  For information on compiling Ghostscript for MS-DOS with the Watcom C++ compiler and GNU make (which avoids the severe limitations in Watcom's wmake program), contact Boguslaw Jackowski <B.Jackowski@gust.org.pl>.

# Related work

## PDF encryption

Geoff Keating has created code to allow processing encrypted PDF files. Unfortunately, current U.S. export control laws don't allow redistribution of this code from a site in the U.S., even though it's freely available to anyone anywhere in the world from Geoff's site in Australia:

> http://www.ozemail.com.au/~geoffk/pdfencrypt/

Instructions for using this file are on Geoff's Web page.

## Previewers

The Ghostscript user interface is very primitive, so several people have contributed screen previewers with better user interfaces.

### Previewers for X Windows

We know of three freely available X Windows screen previewers based on Ghostscript: `Ghostview`, `gv`, and `GSPreview`. Most users who have expressed an opinion prefer `gv` over `Ghostview`.

`gv`
  gv, which is derived from Ghostview, is available from CTAN sites and through the site of its author, Johannes Plass <plass@thep.physik.uni-mainz.de>:

  > http://wwwthep.physik.uni-mainz.de/~plass/gv/

  A copy of gv (but perhaps not the most recent version) can also be found at:

  > http://www.cs.wisc.edu/~ghost/gv/
  > ftp://ftp.cs.wisc.edu/ghost/gnu/gv/

  gv is available for OpenVMS (both VAX and Alpha), called GhostView-VMS or gv-vms. Some places you can find it are:

  > ftp://axp.psl.ku.dk/decwindows/xaw3d/
  > ftp://ftp.wku.edu/vms/fileserv/x11kit.zip

`Ghostview`
  For information on Ghostview, contact Tim Theisen <ghostview@cs.wisc.edu>. You can get Ghostview from

  > http://www.cs.wisc.edu/~ghost/ghostview/

`GSPreview`
  For information on GSPreview, contact Richard Hesketh <rlh@ukc.ac.uk>.

### Previewers for DOS and MS Windows

`GSview`
  GSview, a popular freely available MS Windows and OS/2 screen previewer based on Ghostscript, is available from

  > http://www.cs.wisc.edu/~ghost/gsview/

  For technical information on GSview for Windows or PM GSview, please contact Russell Lang <gsview@ghostgum.com.au>. These programs are also available for commercial licensing from Artifex Software Inc.

`ps_view`
  GUST, the Polish TeX Users Group, has created `ps_view`, a public-domain DOS package that provides "an interactive environement for previewing PostScript documents. The current version can drive the current version of the Ghostscript interpreter; enables scaling, rotating, restart, on-line help, printing the screen, etc." `ps_view` is available from its home site and from CTAN:

  > ftp://ftp.pg.gda.pl/pub/TeX/support/ps_view/
  > ftp://ftp.dante.de/tex-archive/support/ps_view/

  `ps_view's` authors are Boguslaw Jackowski and Piotr Pianowsky <P.Pianowski@gust.org.pl>.

`psv`
  `PSV`, another keyboard-based PostScript viewing package for DOS, appears to be redistributable with no restrictions. It was once available from

  > ftp://puccini.ujf-grenoble.fr/pub/contrib-ps/DOS-PSV/

### A previewer for Linux

`BMV`
  Jan Kybic has created a Ghostscript-based bitmap previewing program for Linux called `BMV`, which doesn't use X Windows but is based on `svgalib`. He says there is a port of `BMV` for SCO Unix by William Bader. `BMV` is available from

  > ftp://sunsite.unc.edu/pub/Linux/apps/graphics/viewers/svga/bmv-1.2.tgz

## Fonts

The fonts available for Ghostscript, and how to use and add fonts in general, are extensively documented. See that documentation for (almost) all information about fonts. Nelson Beebe maintains a useful set of information about PostScript Type 1 fonts, including sources for freely distributable and commercially licensed fonts and an extensive list of Unix systems and the fonts available for them:

> http://www.math.utah.edu/~beebe/fonts/postscript-type-1-fonts.html

## Ancillary programs

`genscript`
  `genscript` is a free replacement for the `enscript` program. `genscript` converts plain text files to PostScript and sends the generated PostScript output to the specified printer or to a file. `genscript` can be easily extended to handle different output media, and it has many options which can be used to customize printouts, including 2-up printing, pagination, complex headers, and many more. You can find the current version at

  > http://www.iki.fi/~mtr/genscript/ (home page)
  > ftp://ftp.gnu.org/pub/gnu/enscript-*.tar.gz

`pstotext`
  A good free utility `pstotext` uses Ghostscript to extract plain text from PostScript files. It is much better than the `ps2ascii` utility distributed with Ghostscript. You can read the `pstotext` documentation at

  > http://www.research.digital.com/SRC/virtualpaper/manpages/pstotext.1.html

  and download the `pstotext` kit from

  > http://www.research.digital.com/SRC/virtualpaper/pstotext.html

  `pstotext` is unsupported, but the authors, Paul McJones <paul.mcjones@acm.org> and Andrew Birrell <birrell@pa.dec.com>, are happy to have your questions and comments either by e-mail or at

  > http://www.research.digital.com/SRC/virtualpaper/comments.html

  For more information about the authors' Virtual Paper project, which attempts to make on-line reading of lengthy material (like research reports, manuals, or entire books) comfortable, read:

  > http://www.research.digital.com/SRC/virtualpaper

# If you need help

The list of Frequently Asked Questions (FAQ) isn't updated very often, so it may be somewhat out of date. It's available from

> http://www.cs.wisc.edu/~ghost/gsfaq.html
> ftp://ftp.cs.wisc.edu/ghost/gsfaq.txt

or by AFS from

> /afs/cs.wisc.edu/public/ghost/gsfaq.txt

CompuServe announced in December 1995 that the Graphics Support Forum offers Message Section and Library 21, "Ghostscript", for technical assistance with Ghostscript. Ghostscript is available for downloading in Library 21, "Ghostscript." To access the Graphics Support Forum, `GO GRAPHSUP`. This service has no connection with Aladdin Enterprises.

Aladdin Enterprises doesn't have the resources to respond to questions from users of the freely available versions of Ghostscript. (Responding to questions and problem reports is one of the benefits that Artifex Software provides to commercial users in exchange for the licensing fee.) If you have problems with Ghostscript and you have access to the Internet, we suggest to post your question to one of these Usenet newsgroups:

`gnu.ghostscript.bug`
  if your question is about GNU Ghostscript (currently versions 5.10 and below). If you have access to Internet mail, but not Usenet news, write to `bug-ghostscript@gnu.org`, which is equivalent to posting to that newsgroup.
`comp.lang.postscript`
  if your question is about Aladdin Ghostscript (currently versions 5.50 and above). If you have access to Internet mail, but not Usenet news, write to `comp.lang.postscript@aladdin.com`, which is equivalent to posting to that newsgroup. We hope to establish a separate newsgroup for Aladdin Ghostscript in the future, since `comp.lang.postscript` was not intended for Ghostscript discussion per se.

There are hundreds of Ghostscript user sites all over the world, and another user will often be able to help you. If you have trouble with a specific device driver, look at `devs.mak` and `contrib.mak` in the Ghostscript source directory to see in which file the driver is defined. If it's defined in `contrib.mak`, the list of contributed drivers, please contact the author directly: Aladdin Enterprises can't help you with user-maintained drivers.

## Reporting problems

Aladdin Enterprises wants Ghostscript to be of high quality, but since Ghostscript is free and our staff time is not, we can only respond to problems under certain conditions.

If you have a problem, the first thing you should do is check the "known problems" notice at

> http://www.cs.wisc.edu/~ghost/aladdin/relnotes/gs###/index.html

where "###" is the unpunctuated version number of Ghostscript's latest release.

If your problem isn't a known one, but it is connected with installing or configuring Ghostscript, we cannot provide help. We encourage you to post problems to the newsgroups mentioned above.

If you have a problem after installing Ghostscript and running it successfully, please read carefully the following information about reporting problems to us.

We will consider investigating problems reported to the newsgroups, or e-mailed directly to <bug-gs@aladdin.com>, if (and only if) the report meets all the following conditions:

1. You are using the most recent version of Aladdin Ghostscript.
2. You obtained Ghostscript directly from Aladdin Enterprises, or from the FTP or AFS site on the Internet mentioned above (that is, not from a bulletin board system or a commercial system such as CompuServe).
3. You have installed Ghostscript successfully, and used it successfully on other input data.
4. Your problem is reproducible, and you can provide the input data that evokes it, either by e-mail in the problem report itself (if data is less than 500K bytes) or by anonymous FTP or HTTP.
5. Your problem is reproducible with Ghostscript alone, without using a viewer such as Ghostview or GSview. (If a problem happens only with Ghostview, write to Tim Theisen <ghostview@cs.wisc.edu>. If it happens only with GSview, contact Russell Lang <gsview@ghostgum.com.au>.)
6. Your problem is reproducible using a driver (output device) that Aladdin maintains -- i.e., one listed in `src/devs.mak`. If your problem only occurs with a third-party driver (listed in `src/contrib.mak`, or obtained elsewhere and not listed in either of these files), please report it to the driver's author, not to Aladdin.
7. You created the problem report by filling out the bug form completely. We really do mean "completely" -- fill in every item that applies to your situation. To e-mail it, use your browser to save it as text, then complete it and send the completed report.

Problem reports that include suggested fixes are especially welcome. As time permits, Aladdin Enterprises may also respond to e-mail from the following classes of users:

1. Beta testers who have actually given us at least one report on some beta version supplied to them.
2. People developing drivers for Ghostscript or applications based on it, and that will be made freely available.
3. People who express serious interest in licensing Ghostscript commercially.

Aladdin Enterprises owns or has access to the following hardware and software:

- Pentium II with color SuperVGA display; various H-P printers. These systems run Red Hat Linux 5.1 and 5.2 with gcc, and Microsoft Windows 95 and 98 with Borland C++ 4.0 (and several older versions), Watcom C++ 10.0, and Microsoft Visual C++ 4.0.

If your problem turns out to be specific to some other hardware or software configuration, it may take longer to track down, since we will have to rely on other users to help.

# Contacting Aladdin Enterprises

Please do not contact us if all you want is help with the freely distributed versions of Ghostscript! Ghostscript is free, but our time is not. If you call for help, we will tell you politely that we cannot answer your question. Ghostscript's documentation, while not of commercial end-user quality, has been adequate for thousands of users (for many of whom English is a foreign language), so the answer to your question is very likely in it somewhere.

Here is our contact information:

# How you can help improve Ghostscript

The most valuable thing you can do to help improve Ghostscript is to help test it. Aladdin makes three different grades of release available, each of which needs a different kind of testing.

- Public releases are made available about every 9 months, after a beta test period. Reporting problems as described above often results in a fix being posted on our Web site.

- Beta releases are posted starting about 6 weeks before a planned public release. These are candidates for public release, and need intensive testing.

- Tester releases are posted every few weeks. These are not supposed to be good enough for general use, but testing them is still very helpful, since it gets problems corrected before the intensive beta test period.

You can always find the current public release and the current beta or tester release on our Web site. If you would like to be notified when new beta or tester releases are posted, please contact Aladdin.

There are also some projects that users could do that are somewhat independent of the main body of the code, and that would help improve Ghostscript.

- Make Ghostscript work with the free `emx/gcc` and `rsx` libraries to provide an alternative DOS, Windows 95/98/NT, and OS/2 implementation that requires no proprietary, commercial compilers. We think Ghostscript's existing OS/2 makefile already includes most of what is needed. If someone is willing to do the work, we will be happy to include this in our list of supported platforms and to distribute the makefiles. If interested, please consult

  > http://www.leo.org/pub/comp/os/os2/leo/gnu/emx+gcc/

  and then contact Aladdin if you want to do the work.

- We would like to provide (Adobe) PrintGear and (H-P) PPA output drivers for Ghostscript, but the specifications for these protocols are not published. If you can provide them to us without violating any agreements, please contact Aladdin.

- There is a project to create a GNU implementation of the OPENStep API, which involves extending Ghostscript to provide the full functionality of Adobe's Display PostScript system with some of the NeXT extensions. For more information, please contact Net-Community <scottc@net-community.com>.

# Acknowledgements

Ghostscript was originally created, and is primarily developed and maintained, by L. Peter Deutsch, President of Aladdin Enterprises (not to be confused with Peter J. Deutsch, founder of Bunyip Information Systems Inc.).

Special thanks are due to Russell Lang, for the `GSview for Windows` and `PM GSview` programs, and for contributing most of the code for the Microsoft Windows and OS/2 environments; to Tim Theisen, for the `Ghostview` program for X Windows and for major contributions to, and assistance with support of, the code for the X Windows environment; to Martin Fong and Mark Lentczner, for the first Macintosh ports; to Pete Kaiser <kaiser@acm.org>, for redoing all of the documentation in HTML; and to the Independent JPEG Group, to Group 42, Inc., and to Jean-loup Gailly and Mark Adler, for creating the freely available libraries that Ghostscript uses.

Special thanks are due to URW++ Design and Development Incorporated, of Hamburg, Germany (http://www.urwpp.de/) for making a commercial-quality set of the 35 standard PostScript Type 1 fonts available for free distribution under the GNU and Aladdin licenses, and for updating them to include Adobe's expanded PostScript 3 character set.

Special thanks are due to Richard Stallman and the Free Software Foundation for originating the GNU General Public License, for originally motivating Aladdin's interest in creating free software, and for being the primary distributor of GNU Ghostscript on the Internet.

See also the list of the many other people who have contributed significantly to improving Ghostscript.

Copyright © 1996, 1997, 1998, 1999 Aladdin Enterprises. All rights reserved.

This file is part of Aladdin Ghostscript. See the Aladdin Free Public License (the "License") for full details of the terms of using, copying, modifying, and redistributing Aladdin Ghostscript.

Ghostscript version 6.0, 3 February 2000