GSFTOPK(1)                                             GSFTOPK(1)

NAME
       gsftopk - render a ghostscript font in TeX pk format

SYNOPSIS
       gsftopk  [-i  path]  [-q]  [-t]  [--debug=n]  [--dosnames]
       [--interpreter=path]   [--mapline=line]   [--mapfile=file]
       [--quiet] [--test] [--help] [--version] font dpi

ARGUMENTS
       font  Name of the font to be created.

       dpi   Desired  resolution  of  the  font to be created, in
             dots per inch.  This may be a real number.

DESCRIPTION
       gsftopk is a program which calls up the  ghostscript  pro-
       gram  gs(1)  to render a given font at a given resolution.
       It packs the resulting characters into the pk file  format
       and  writes  them  to a file whose name is formed from the
       font name and the resolution (rounded to the nearest inte-
       ger).   The  font  may  be  in  any  format  acceptable to
       Ghostscript, including .pfa, .pfb, .gsf, and .ttf files.

       This program should normally be called by a  script,  such
       as mktexpk, to create fonts on demand.

       gsftopk  obtains  the character widths from the .tfm file,
       which must exist in the standard  search  path.   It  also
       must  be  able  to  find  the  font in a map file (such as
       psfonts.map),  formatted  as  in  dvips(1)),  unless   the
       --mapline  option  is used.  The set of map files is given
       by the  --mapfile  option,  or  in  the  files  config.ps,
       $HOME/.dvipsrc,  and  config.gsftopk  (as would be used by
       dvips -Pgsftopk).

       The following pk "specials" are added at the  end  of  the
       output  file, to provide an internal check on the contents
       of the file: "jobname=font", "mag=1", "mode=modeless", and
       "pixels_per_inch=dpi".  This is in accordance with the TeX
       Directory Standard (TDS).

OPTIONS
       --debug=n
              Set the Kpathsea debug flags according to the inte-
              ger n.

       --dosnames
              Use   a   name  of  the  form  font.pk  instead  of
              font.dpipk.

       -h, --help
              Print a brief help synopsis and exit.

       -i path, --interpreter=path
              Use path as the Ghostscript interpreter.

       --mapfile=file
              Use file to look for the map information for  font.
              This  should be the full name of the file (in other
              words, no path searching algorithms are applied).

       --mapline=line
              Use line instead of looking for an entry in  a  map
              file.  The first word of line must match font.

       -q, --quiet
              Operate quietly; i.e., without writing any messages
              to the standard output.

       -t, --test
              Test run:  return zero status if the  font  can  be
              found  in the map file(s), and nonzero status if it
              cannot.  If this option is specified, then the  dpi
              argument  is  optional  (since the font will not be
              generated).

       -v, --version
              Print the version number and exit.

ENVIRONMENT VARIABLES
       TFMFONTS      Colon-separated list of paths to search  for
                     the  .tfm file associated with the font.  An
                     extra colon in the  list  will  include  the
                     compiled-in  default paths at that point.  A
                     double slash will enable recursive subdirec-
                     tory searching at that point in the path.

       DVIPSHEADERS  Colon-separated  list of paths to search for
                     the Ghostscript driver  file  render.ps  and
                     for  any  PostScript  header  or  font files
                     (.enc, .pfa, .pfb,  .gsf,  or  .ttf  files).
                     Double  slashes  and  extra colons behave as
                     with TFMFONTS.

       TEXCONFIG     Colon-separated list of paths to search  for
                     map  files.  Double slashes and extra colons
                     behave as with TFMFONTS.

       DVIPSRC       Name of file to read instead of $HOME/.dvip-
                     src.   This  should  be the full name of the
                     file (in  other  words,  no  path  searching
                     algorithms are applied).

CONFIGURATION
       In  order to determine the set of map files to be used and
       the path for finding PostScript files, gsftopk  reads,  in
       order,  the files config.ps, .dvipsrc, and config.gsftopk.
       The files config.ps and config.gsftopk  are  searched  for
       using  the  environment  variable  TEXCONFIG, the Kpathsea
       configuration file, or the compiled-in default paths.  The
       file  .dvipsrc  is  searched for in the user's home direc-
       tory.

       These files are in the same format as for dvips  (as  well
       as  being  in  the  same  locations).  The entries used by
       gsftopk are as follows.

       H path Indicates that the  Ghostscript  driver  file  ren-
              der.ps and the PostScript header and font files are
              to be searched for using path.

       p file Indicates that the list  of  map  files  is  to  be
              erased and replaced by file.

       p +file
              Indicates  that  file is to be added to the list of
              map files.

       All other entries are ignored.

       This is similar to the handling of these options when run-
       ning  dvips -Pgsftopk.  For more details, see the Kpathsea
       manual.

BUGS
       gsftopk sometimes has trouble with fonts with very compli-
       cated  characters  (such  as the Seal of the University of
       California).  This is because gsftopk  uses  the  charpath
       operator  to determine the bounding box of each character.
       If the character is too complicated, then old versions  of
       Ghostscript  fail,  causing  gsftopk  to terminate with an
       error message

              Call to gs stopped by signal 10

       (The number may vary from system to system; it corresponds
       to  a bus error or a segmentation fault.)  The best way to
       fix  this  bug  is  to  install  a  current   version   of
       ghostscript.  As an alternative, gsftopk can be instructed
       to use the bounding box provided with  the  font  (if  one
       exists) instead of finding a bounding box for each charac-
       ter.  To do this, include the string

              /usefontbbox true def

       in the font map file; e.g.,

              ucseal "/usefontbbox true def"

       This will not affect use of the font by dvips.

SEE ALSO
       gs(1), gftopk(1), tex(1), xdvi(1), dvips(1)

AUTHOR
       Written by Paul Vojta.  This program was inspired by  Karl
       Berry's gsrenderfont.

MODIFICATIONS
       Modified  by  Yves  Arrouye  to  use Karl Berry's Kpathsea
       library.

                         28 November 1998                       1