DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

gs(1)




GS(1)                      Ghostscript                      GS(1)


NAME

     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)  languages.   gs  reads
     "files"  in  sequence  and executes them as Ghostscript pro-
     grams.  After doing this, it reads further  input  from  the
     standard  input stream (normally the keyboard), interpreting
     each line separately.  The interpreter quits gracefully when
     it  encounters  the "quit" command (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

7.05               Last change: 22 April 2002                   1

GS(1)                      Ghostscript                      GS(1)

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

          gs -sDEVICE=epson myfile.ps

     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 environment
     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 output
     -- on Unix systems, usually to a temporary  file.   To  send
     the output to a file "foo.xyz", use the switch

          -sOutputFile=foo.xyz

7.05               Last change: 22 April 2002                   2

GS(1)                      Ghostscript                      GS(1)

     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
     filename template:

          -sOutputFile=foo%d.xyz

     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 initial-
     ization 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

7.05               Last change: 22 April 2002                   3

GS(1)                      Ghostscript                      GS(1)

     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
     b5           6.95833    9.84722    17.6742   25.0119
     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 infor-
     mation:

               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" operator,
     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

7.05               Last change: 22 April 2002                   4

GS(1)                      Ghostscript                      GS(1)

         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 built.
         When gs is built  on  Unix,  GS_LIB_DEFAULT  is  usually
         "/usr/local/share/ghostscript/#.##:/usr/local/share/ghostscript/fonts"
         where "#.##" represents the Ghostscript version number.

     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 pro-
     gram 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  computed
          from WidthOfScreen and WidthMMOfScreen).

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

     useBackingPixmap
          Determines whether backing store is to be used for sav-
          ing 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:

7.05               Last change: 22 April 2002                   5

GS(1)                      Ghostscript                      GS(1)

               % 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 the name "ARGU-
          MENTS"  in "userdict" (not "systemdict") 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  defini-
          tion.   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
          -dDEVICEHEIGHT=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
          -dDEVICEYRESOLUTION=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.

7.05               Last change: 22 April 2002                   6

GS(1)                      Ghostscript                      GS(1)

     -    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 command  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.

     Note that the normal initialization file "gs_init.ps"  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 definitions in "userdict" or other
     dictionaries.)


SPECIAL NAMES

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

     -dBATCH
          Causes Ghostscript to exit after processing  all  files
          named  on  the  command line, rather than prompting for
          further PostScript commands.

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

     -sDEVICE=device
          Selects  an  alternate  initial   output   device,   as
          described above.

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

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

     -dNOCACHE
          Disables character caching. Useful only for debugging.

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

7.05               Last change: 22 April 2002                   7

GS(1)                      Ghostscript                      GS(1)

          debugging.

     -dNOPLATFONTS
          Disables the use of fonts supplied  by  the  underlying
          platform  (for  instance X Windows). This may be needed
          if the platform fonts look undesirably  different  from
          the scalable fonts.

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

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


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 different
     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 definitions

     /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  command
          line options

     GS_DEVICE
          Used to specify an output device

7.05               Last change: 22 April 2002                   8

GS(1)                      Ghostscript                      GS(1)

     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 7.07.


AUTHOR

     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.

7.05               Last change: 22 April 2002                   9


Man(1) output converted with man2html