gs  - Ghostscript (PostScript and PDF language interpreter
       and previewer)


SYNOPSIS

       gs [ options ] [ files ] ... (Unix, VMS)
       gswin32 [ options ] [ files ] ... (MS Windows)
       gswin32c [ options ] [ files ] ... (MS Windows)
       gs386 [ options ] [ files ] ... (DOS for PC)
       gsos2 [ options ] [ files ] ... (OS/2)


DESCRIPTION

       The gs (gswin32, gswin32c, gs386, gsos2)  command  invokes
       Ghostscript,    an    interpreter    of   Adobe   Systems'
       PostScript(tm) and Portable  Document  Format  (PDF)  lan­
       guages.  gs reads "files" in sequence and executes them as
       Ghostscript programs.  After doing this, it reads  further
       input  from  the  standard input stream (normally the key­
       board), interpreting each  line  separately.   The  inter­
       preter quits gracefully when it encounters the "quit" com­
       mand (either in a file or from the keyboard),  at  end-of-
       file,  or at an interrupt signal (such as Control-C at the
       keyboard).

       The  interpreter  recognizes  several  switches  described
       below,  which  may appear anywhere in the command line and
       apply to all files thereafter.  Invoking Ghostscript  with
       the -h or -? switch produces a message which shows several
       useful switches, all the devices known to that executable,
       and  the  search path for fonts; on Unix it also shows the
       location of detailed documentation.

       Ghostscript may be built able to use many different output
       devices.   To  see  which devices your executable can use,
       run "gs -h".  Unless  you  specify  a  particular  device,
       Ghostscript  normally  opens  the  first  one of those and
       directs output to it, so if the first one in the  list  is
       the one you want to use, just issue the command

            gs myfile.ps

       You  can  also  check  the  set  of available devices from
       within Ghostscript: invoke Ghostscript and type

            devicenames ==

       but the first device on the resulting list may not be  the
       default  device  you  determine  with "gs -h".  To specify
       "AbcXyz" as the initial output device, include the switch

            -sDEVICE=AbcXyz

       For example, for output to an Epson printer you might  use
       the command


       The "-sDEVICE=" switch must precede the first mention of a
       file to print, and only the switch's  first  use  has  any
       effect.  Alternatively, in Ghostscript you can type

            (epson) selectdevice
            (myfile.ps) run

       All  output  then  goes  to  the  printer until you select
       another device with the "selectdevice"  procedure  in  the
       PostScript program stream, for example

            (vga) selectdevice
       or
            (x11) selectdevice

       Finally,  you can specify a default device in the environ­
       ment variable GS_DEVICE.   The  order  of  precedence  for
       these  alternatives  from  highest  to lowest (Ghostscript
       uses the device defined highest in the list) is:

            selectdevice
            (command line)
            GS_DEVICE
            (first device in build list)

       Some printers can print at different  resolutions  (densi­
       ties).   To  specify the resolution on such a printer, use
       the "-r" switch:

            gs -sDEVICE=<device> -r<xres>x<yres>

       For example, on a 9-pin Epson-compatible printer, you  get
       the lowest-density (fastest) mode with

            gs -sDEVICE=epson -r60x72

       and the highest-density (best output quality) mode with

            gs -sDEVICE=epson -r240x72.

       If  you select a printer as the output device, Ghostscript
       also allows you to choose where Ghostscript sends the out­
       put  --  on Unix systems, usually to a temporary file.  To
       send the output to a file "foo.xyz", use the switch

            -sOutputFile=foo.xyz

       You might want to print each page separately.  To do this,
       send  the output to a series of files "foo1.xyz, foo2.xyz,
       ..." using the "-sOutputFile=" switch with "%d" in a file­
       name template:


       Each  resulting  file receives one page of output, and the
       files are numbered in sequence.  "%d" is a  printf  format
       specification; you can also use a variant like "%02d".

       On  Unix  systems you can also send output to a pipe.  For
       example, to pipe output to the "lpr"  command  (which,  on
       many  Unix  systems,  directs  it  to  a printer), use the
       switch

            -sOutputFile=\|lpr

       You can also send output to  standard  output  for  piping
       with the switch

            -sOutputFile=-

       In  this  case you must also use the -q switch, to prevent
       Ghostscript from writing messages to standard output.

       To select a specific paper  size,  use  the  command  line
       switch

            -sPAPERSIZE=a_known_paper_size

       for instance

            -sPAPERSIZE=a4
       or
            -sPAPERSIZE=legal

       At  this  time, the known paper sizes, defined in the ini­
       tialization file "gs_statd.ps", are:

       PAPERSIZE    X inches   Y inches   X cm      Y cm
       -----------------------------------------------------
       a0           33.0556    46.7778    83.9611   118.816
       a1           23.3889    33.0556    59.4078   83.9611
       a2           16.5278    23.3889    41.9806   59.4078
       a3           11.6944    16.5278    29.7039   41.9806
       a4           8.26389    11.6944    20.9903   29.7039
       a5           5.84722    8.26389    14.8519   20.9903
       a6           4.125      5.84722    10.4775   14.8519
       a7           2.91667    4.125      7.40833   10.4775
       a8           2.05556    2.91667    5.22111   7.40833
       a9           1.45833    2.05556    3.70417   5.22111
       a10          1.02778    1.45833    2.61056   3.70417
       b0           39.3889    55.6667    100.048   141.393
       b1           27.8333    39.3889    70.6967   100.048
       b2           19.6944    27.8333    50.0239   70.6967
       b3           13.9167    19.6944    35.3483   50.0239
       b4           9.84722    13.9167    25.0119   35.3483

       archA        9          12         22.86     30.48
       archB        12         18         30.48     45.72
       archC        18         24         45.72     60.96
       archD        24         36         60.96     91.44
       archE        36         48         91.44     121.92
       flsa         8.5        13         21.59     33.02
       flse         8.5        13         21.59     33.02
       halfletter   5.5        8.5        13.97     21.59
       note         7.5        10         19.05     25.4
       letter       8.5        11         21.59     27.94
       legal        8.5        14         21.59     35.56
       11x17        11         17         27.94     43.18
       ledger       17         11         43.18     27.94

       Note that the B paper sizes are ISO sizes: for information
       about using JIS B sizes, see Use.htm.

       Ghostscript  can  do  many things other than print or view
       PostScript and PDF files.  For example,  if  you  want  to
       know  the  bounding  box  of  a  PostScript (or EPS) file,
       Ghostscript provides a special "device" that  just  prints
       out this information:

                 gs -sDEVICE=bbox myfile.ps

       For  example,  using  one of the example files distributed
       with Ghostscript,

                 gs -sDEVICE=bbox golfer.ps

       prints out

                 %%BoundingBox: 0 25 583 732
                 %%HiResBoundingBox: 0.808497 25.009496 582.994503 731.809445


INITIALIZATION FILES

       When looking for the initialization files  "gs_*.ps",  the
       files  related  to fonts, or the file for the "run" opera­
       tor, Ghostscript first tries to open  the  file  with  the
       name  as  given, using the current working directory if no
       directory is specified.  If this fails, and the file  name
       doesn't  specify  an  explicit  directory  or  drive  (for
       instance, doesn't contain "/" on Unix systems  or  "\"  on
       DOS systems), Ghostscript tries directories in this order:

       1.  the directories specified by the -I  switches  in  the
           command line (see below), if any;

       2.  the  directories  specified  by the GS_LIB environment
           variable, if any;

       3.  the directories specified by the GS_LIB_DEFAULT  macro
           in  the  Ghostscript  makefile when the executable was

           usually
           "/usr/local/share/ghostscript/#.##:/usr/local/share/ghostscript/fonts"
           where  "#.##"  represents the Ghostscript version num­
           ber.

       Each of these (GS_LIB_DEFAULT, GS_LIB, and  -I  parameter)
       may  be either a single directory or a list of directories
       separated by ":".


X RESOURCES

       Ghostscript looks for the following  resources  under  the
       program name "Ghostscript":

       borderWidth
              The border width in pixels (default = 1).

       borderColor
              The name of the border color (default = black).

       geometry
              The  window size and placement, WxH+X+Y (default is
              NULL).

       xResolution
              The number of x pixels per inch  (default  is  com­
              puted from WidthOfScreen and WidthMMOfScreen).

       yResolution
              The  number  of  y pixels per inch (default is com­
              puted from HeightOfScreen and HeightMMOfScreen).

       useBackingPixmap
              Determines whether backing store is to be used  for
              saving display window (default = true).

       See  the  usage  document  for  a  more  complete  list of
       resources.  To set these resources on Unix, put them in  a
       file such as "~/.Xresources" in the following form:

                 Ghostscript*geometry:  612x792-0+0
                 Ghostscript*xResolution: 72
                 Ghostscript*yResolution: 72

       Then  merge  these  resources into the X server's resource
       database:

                 % xrdb -merge ~/.Xresources


SWITCHES

       -- filename arg1 ...
              Takes the next argument as a file  name  as  usual,
              but  takes  all  remaining  arguments (even if they
              have the syntactic form of  switches)  and  defines

              dict") as an array of those strings, before running
              the  file.  When Ghostscript finishes executing the
              file, it exits back to the shell.

       -Dname=token
       -dname=token
              Define a name in "systemdict" with the given  defi­
              nition.   The  token  must be exactly one token (as
              defined by the "token" operator) and may contain no
              whitespace.

       -Dname
       -dname Define a name in "systemdict" with value=null.

       -Sname=string
       -sname=string
              Define  a  name in "systemdict" with a given string
              as value.  This is different from -d.  For example,
              -dname=35 is equivalent to the program fragment
                        /name 35 def
              whereas -sname=35 is equivalent to
                        /name (35) def

       -q     Quiet  startup:  suppress  normal startup messages,
              and also do the equivalent of -dQUIET.

       -gnumber1xnumber2
              Equivalent to -dDEVICEWIDTH=number1  and  -dDEVICE­
              HEIGHT=number2.  This is for the benefit of devices
              (such as X11 windows) that require (or allow) width
              and height to be specified.

       -rnumber
       -rnumber1xnumber2
              Equivalent to -dDEVICEXRESOLUTION=number1 and -dDE­
              VICEYRESOLUTION=number2.  This is for  the  benefit
              of devices such as printers that support multiple X
              and Y resolutions.  If only one number is given, it
              is used for both X and Y resolutions.

       -Idirectories
              Adds the designated list of directories at the head
              of the search path for library files.

       -      This is not  really  a  switch,  but  indicates  to
              Ghostscript  that  standard  input is coming from a
              file or a pipe and not interactively from the  com­
              mand  line.   Ghostscript reads from standard input
              until it reaches end-of-file, executing it like any
              other  file, and then continues with processing the
              command line.   When  the  command  line  has  been
              entirely  processed,  Ghostscript exits rather than
              going into its interactive mode.

       makes  "systemdict"  read-only,  so  the  values  of names
       defined  with  -D,  -d,  -S,  or  -s  cannot  be   changed
       (although,  of  course,  they can be superseded by defini­
       tions in "userdict" or other dictionaries.)


SPECIAL NAMES

       -dDISKFONTS
              Causes individual character outlines to  be  loaded
              from  the disk the first time they are encountered.
              (Normally Ghostscript loads all the character  out­
              lines  when it loads a font.)  This may allow load­
              ing more fonts into RAM, at the expense  of  slower
              rendering.

       -dNOCACHE
              Disables character caching.  Useful only for debug­
              ging.

       -dNOBIND
              Disables the  "bind"  operator.   Useful  only  for
              debugging.

       -dNODISPLAY
              Suppresses  the normal initialization of the output
              device.  This may be useful when debugging.

       -dNOPAUSE
              Disables the prompt and pause at the  end  of  each
              page.  This may be desirable for applications where
              another program is driving Ghostscript.

       -dNOPLATFONTS
              Disables the use of fonts supplied by the  underly­
              ing platform (for instance X Windows).  This may be
              needed if the platform fonts look undesirably  dif­
              ferent from the scalable fonts.

       -dSAFER
              Disables  the  "deletefile" and "renamefile" opera­
              tors and the ability to  open  files  in  any  mode
              other  than  read-only.   This may be desirable for
              spoolers or other sensitive  environments  where  a
              badly  written or malicious PostScript program must
              be prevented from changing important files.

       -dWRITESYSTEMDICT
              Leaves "systemdict" writable.   This  is  necessary
              when  running  special  utility  programs  such  as
              font2c  and  pcharstr,  which  must  bypass  normal
              PostScript access protection.

       -sDEVICE=device
              Selects  an  alternate  initial  output  device, as


       -sOutputFile=filename
              Selects an alternate output file (or pipe) for  the
              initial output device, as described above.


FILES

       The  locations of many Ghostscript run-time files are com­
       piled into the executable when it is built.  On Unix these
       are typically based in /usr/local, but this may be differ­
       ent on your system.  Under DOS they are typically based in
       C:\GS,  but  may  be  elsewhere, especially if you install
       Ghostscript with GSview.  Run "gs -h" to find the location
       of  Ghostscript  documentation  on your system, from which
       you can get more details.

       /usr/local/share/ghostscript/#.##/*
              Startup files, utilities, and  basic  font  defini­
              tions

       /usr/local/share/ghostscript/fonts/*
              More font definitions

       /usr/local/share/ghostscript/#.##/examples/*
              Ghostscript demonstration files

       /usr/local/share/ghostscript/#.##/doc/*
              Diverse document files


ENVIRONMENT

       GS_OPTIONS
              String  of  options to be processed before the com­
              mand line options

       GS_DEVICE
              Used to specify an output device

       GS_FONTPATH
              Path names used to search for fonts

       GS_LIB Path names for initialization files and fonts

       TEMP   Where temporary files are made


SEE ALSO

       The various Ghostscript document files (above), especially
       Use.htm.


BUGS

       See the Usenet news group comp.lang.postscript.


VERSION

       This  document  was  last  revised for Ghostscript version
       6.50.

       L. Peter  Deutsch  <ghost@aladdin.com>  is  the  principal
       author  of Ghostscript.  Russell J. Lang <rjl@aladdin.com>
       is  the  author  of  most  of  the  MS  Windows  code   in
       Ghostscript.


Man(1) output converted with man2html