# Overview of Ghostscript

If this is your first contact with Ghostscript, before continuing here you should read the documentation for new users, where you'll find

- what Ghostscript does (PostScript and PDF previewing, conversion, and printing);
- its licensing terms (free for ordinary use);
- what platforms it runs on (every platform you're likely to be interested in);
- where to find some useful programs that enhance Ghostscript (like user-friendly previewers for Unix, VMS, MS Windows, DOS, and Macintosh); and
- what to do if you need help.

The rest of this document is a roadmap to the Ghostscript documentation. After looking through it, if you want to install Ghostscript and not only use it, we recommend you read how to install Ghostscript, and how to compile Ghostscript from source code (which is necessary before installing it on Unix and VMS systems).

## Table of contents

> - Document roadmap by theme
>   - What should I read if I'm a new user?
>   - Before building Ghostscript
>   - What should I read if I'm not a new user?
>   - What if I'm a developer?
>   - What if I'm writing documentation?
> - Presence on the World Wide Web
>   - Ghostscript's home pages
>   - Adobe PostScript, Encapsulated PostScript, and PDF reference documentation
>   - Other material on the WWW
> - Which document contains what?
>   - Primarily for users:

>     > Bug-form.htm Bug-info.htm Deprecated.htm Devices.htm |  | Helpers.htm Humor.htm New-user.htm Ps2epsi.htm |  | Ps2pdf.htm Readme.htm Unix-lpr.htm Use.htm

>   - For both users and developers:

>     > Changes.htm COPYING Fonts.htm Hershey.htm |  | History*.htm Install.htm Language.htm Make.htm |  | News.htm Psfiles.htm Public.htm

>   - Primarily for developers:

>     > API.htm C-style.htm DLL.htm Develop.htm Drivers.htm |  | Htmstyle.htm Issues.htm Lib.htm Projects.htm |  | Ps-style.htm Release.htm Source.htm Xfonts.htm

## Document roadmap by theme

### What should I read if I'm a new user?

A new user of Ghostscript should begin by reading the material specifically for new users, then as many of these documents as seem useful:

- how to use Ghostscript. This includes both a quickstart introduction to the commandline version and more extensive reference material.
- detailed information about specific devices that Ghostscript can use for output
- information about reporting problems--but remember that Ghostscript comes with NO WARRANTY and NO SUPPORT
- more detailed information about how to use Ghostscript under Unix with `lpr` as a filter for printing

- additional information about AFPL Ghostscript releases that is not relevant to GNU Ghostscript releases.

If you run into any questions, or if you are going to be using Ghostscript extensively, you should at least skim, and probably eventually read:

- about the fonts distributed with Ghostscript, including how to add or replace fonts
- a description of the Ghostscript language, and its differences from the documented PostScript language
- about the postscript files distributed with Ghostscript (other than fonts)

### Before building Ghostscript

If you are going to compile Ghostscript from source, rather than just use an executable you got from somewhere, you may want to read:

- how to build Ghostscript and install it

## What should I read if I'm not a new user?

If you have already used Ghostscript, when you receive a new release you should begin by reading this file, then

- News.htm, for incompatible changes and new features in the current release;
- if you wish, Changes.htm, for a detailed list of changes in the current release;
- if you wish, History#.htm (currently History8.htm), for changes in other releases.

## What if I'm a developer?

If you are going to do any development on or with Ghostscript at all, you should at least look at

- the roadmap documentation for Ghostscript's source files and architecture

If you are going to write a new driver for Ghostscript, you should read

- the guide to the Ghostscript source code
- the interface between Ghostscript and device drivers
- about the external font interface between Ghostscript and platform-supplied fonts

If you are considering distributing Ghostscript in conjunction with a commercial product, you should read the license carefully, and you should also read

- additional clarification of the circumstances under which Ghostscript can be distributed with a commercial product

If you intend to use Ghostscript in the form of a dynamic link library (DLL) under OS/2 or Microsoft Windows or in the form of shared object under GNU/Linux, read

- documentation on Ghostscript Interpreter API

If you want to use Ghostscript as part of another program--as a callable PostScript language interpreter--and not as a DLL or as a self-contained executable application, you should begin by reading

- the source file `imain.h`, the documented API for Ghostscript not as a DLL

or if you are going to use only the Ghostscript graphics library,

- about the structure of the Ghostscript library and its interfaces

## What if I'm writing documentation?

If you are editing or adding to Ghostscript's existing documentation in HTML format, or writing a new document, you should read

- the coding and style guidelines for Ghostscript's HTML-based documentation.

## Presence on the World Wide Web

### Ghostscript's home page

Ghostscript has a home page on the World Wide Web with helpful information such as the FAQ (Frequently Asked Questions) and a list of known problems and workarounds for the current AFPL Ghostscript release (in the "Obtaining" file for that release):

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

More material about Ghostscript can be found at

> http://www.ghostscript.com/

### Adobe PostScript, Encapsulated PostScript, and PDF reference documentation

Adobe makes a wealth of technical documentation available over the Web, including the PostScript Language Reference Manual (Third Edition); the Encapsulated PostScript (EPS) Format Specification version 3, including Encapsulated PostScript Interchange (EPSI) format; the PDF 1.3 specification; and the pdfmark, transparency and Acrobat Distiller parameters documentation. Some of these documents are also available at Adobe's ftp site, but not necessarily under the same filenames.

### Other material on the WWW

GNU Ghostscript has a home page on the World Wide Web with helpful information. Pleave visit:

> http://www.gnu.org/software/ghostscript/

More material about Ghostscript can be found at

> http://www.ghostscript.com/

There is a good manual for Ghostscript available in PDF form, in English and German (and soon in Japanese), at:

> http://www.pdflib.com/gsmanual

There is a translation of the Ghostscript 'man' pages into Czech at:

> http://www.volny.cz/rebus/ghostscript/

## Which document contains what?

Here is the list in alphabetic order of Ghostscript documentation, with explanations of the contents.

API.htm
  On MS-Windows and OS/2, Ghostscript is compiled as a dynamic link library (DLL). On GNU/Linux, Ghostscript can be compiled as a shared object. This describes how to use it. For developers.

C-style.htm
  Guidelines and style for C coding, which you should follow if, for example, you write a new driver or add or change something in Ghostscript. For developers.

Changes.htm
  A detailed list of all code changes in the current release or pre-release, generated mechanically from the CVS logs. For developers.

Commprod.htm
  The conditions under which Ghostscript may be distributed in a commercial context. See also the Aladdin Free Public License.

COPYING
  The text of the GNU General Public License, the copyright terms under which GNU Ghostscript is available.

DLL.htm
  On OS/2, MS Windows-16 and MS Windows-32 platforms, Ghostscript is compiled as a dynamic link library (DLL). This describes how to use it. For developers. This DLL interface is obsolete. Use API.htm instead.

Develop.htm
  Code orientation for developers. Contains a detailed breakdown of the source files by functional group, and overviews of the major architectural features and services.

Deprecated.htm
  Documention for deprecated devices and features. Features described here will be removed in future versions of Ghostscript.

Devices.htm
  Detailed information about some specific devices for which Ghostscript can produce output. Run "`gs -h`" to see which devices a particular version of Ghostscript is built to use.

Drivers.htm
  Describes the interface between Ghostscript and device drivers. If you do this, you should also read and use the C style and coding guidelines. Necessary to develop a new driver. For developers.

Fonts.htm
  All about fonts freely available for Ghostscript, and how to add and use new fonts. Also describes how to use Ghostscript fonts as X Windows fonts. For both users and developers.

Helpers.htm
  A note of thanks to people who have helped in the development of Ghostscript.

Hershey.htm
  Part 1 of the five-part original Usenet distribution of the free Hershey fonts, giving the terms of use and describing their encoding.

History*.htm
  The history of changes in all Ghostscript releases:

  > History8.htm for Ghostscript versions 8.n
  > History7.htm for Ghostscript versions 7.n
  > History6.htm for Ghostscript versions 6.n
  > History5.htm for Ghostscript versions 5.n
  > History4.htm for Ghostscript versions 4.n
  > History3.htm for Ghostscript versions 3.n
  > History2.htm for Ghostscript versions 2.n
  > History1.htm for Ghostscript versions 1.n

Htmstyle.htm
  The guidelines and style for HTML coding of Ghostscript's documentation, which you should follow if, for example, you change existing HTML documentation or write new documents. For writers and editors.

Humor.htm
  Another Ghostscript interpreter.

Install.htm
  How to install Ghostscript. See also how to build it.

Issues.htm
  A list of outstanding open issues in Ghostscript. These include known limitations, minor bugs, performance issues, differences from Adobe implementations, and others.

Language.htm
  The relationship between the Ghostscript interpreter and the PostScript language as defined by Adobe.

Lib.htm
  A description of the Ghostscript library, a set of procedures to implement the graphics and filtering capabilities that are primitive operations in the PostScript language and in Adobe Portable Document Format (PDF). For developers.

Make.htm
  How to build Ghostscript executables from the source code. See also how to install it. It's not necessary to be a highly experienced developer to build or install Ghostscript, but some experience is needed.

New-user.htm
  Essential information for new users of Ghostscript.

News.htm
  A brief description of the latest release or pre-release of Ghostscript, and a list of any incompatible changes in it. Changes in older releases are described in the history files "`History*.htm`", which are usually installed in the documentation directory. Run "`gs -h`" to see where that is.

Projects.htm
  A list of Ghostscript development projects with which we would like help.

Ps-style.htm
  The guidelines and style for postscript coding in Ghostscript. Some of Ghostscript is implemented in the postscript language itself, and various utilities and examples are distributed with it. You should follow these guidelines if you're extending or modifying those files. For developers.

Ps2epsi.htm
  Detailed information on how to use Ghostscript through `ps2epsi` to convert PostScript to Adobe Encapsulated PostScript Interchange (EPSI) format.

Ps2pdf.htm
  Detailed information on how to use Ghostscript through `ps2pdf` to convert PostScript to Adobe Portable Document Format (PDF).

Psfiles.htm
  A description of the PostScript files (other than font files) distributed with Ghostscript, including initialization routines, utility programs, and sample printable files.

Readme.htm
  This document.

Release.htm
  A description of how to prepare and test a Ghostscript release. Of interest only to developers who want to create new Ghostscript versions for distribution.

Source.htm
  A guide to the Ghostscript source code, for development and debugging.

Unix-lpr.htm
  How to set up Ghostscript as a Unix `lpr` filter.

Use.htm
  Detailed instructions on how to use Ghostscript, including such matters as designating an output device; choosing a default paper size; how Ghostscript finds files, including font files; how it uses environment variables; notes on specific platforms, including the X Window System; and command-line options.

Xfonts.htm
  Ghostscript's external font interface to a host platform's font-rendering mechanism, for developers.

Copyright © 1996-2002 artofcode LLC. All rights reserved.

This software is provided AS-IS with no warranty, either express or implied. That is, this program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA, 02111-1307. For more information about licensing, please refer to http://www.ghostscript.com/licensing/. Go to http://www.artifex.com/licensing/ or contact Artifex Software, Inc., 101 Lucas Valley Road #110, San Rafael, CA 94903, U.S.A., +1(415)492-9861.

Ghostscript version 8.16, 9 May 2005