home *** CD-ROM | disk | FTP | other *** search
- #!/bin/sh
- #
- # This script file makes a new TeX PK font, because one wasn't
- # found. Parameters are:
- #
- # name dpi bdpi magnification [mode]
- #
- # `name' is the name of the font, such as `cmr10'. `dpi' is
- # the resolution the font is needed at. `bdpi' is the base
- # resolution, useful for figuring out the mode to make the font
- # in. `magnification' is a string to pass to MF as the
- # magnification. `mode', if supplied, is the mode to use.
- #
- # Note that this file must execute Metafont, and then gftopk,
- # and place the result in the correct location for the PostScript
- # driver to find it subsequently. If this doesn't work, it will
- # be evident because MF will be invoked over and over again.
- #
- # Of course, it needs to be set up for your site.
- #
- # TEMPDIR needs to be unique for each process because of the possibility
- # of simultaneous processes running this script.
- DESTDIR=/LocalLibrary/Fonts/TeXFonts/pk
- TEMPDIR=/tmp/mtpk.$$
- NAME=$1
- DPI=$2
- BDPI=$3
- MAG=$4
- MODE=$5
-
- umask 0
-
- if test "$MODE" = ""
- then
- if test $BDPI = 300
- then
- MODE=imagen
- elif test $BDPI = 400
- then
- MODE=nexthi
- elif test $BDPI = 100
- then
- MODE=nextscreen
- elif test $BDPI = 635
- then
- MODE=linolo
- elif test $BDPI = 1270
- then
- MODE=linohi
- elif test $BDPI = 2540
- then
- MODE=linosuper
- else
- echo "I don't know the mode for $BDPI"
- echo "Have your system admin update MakeTeXPK"
- exit 1
- fi
- fi
-
- # Something like the following is useful at some sites.
- # DESTDIR=/usr/local/lib/tex/fonts/pk.$MODE
- GFNAME=$NAME.$DPI'gf'
- PKNAME=$NAME.$DPI'pk'
-
- # Clean up on normal or abnormal exit
- trap "cd /; rm -rf $TEMPDIR $DESTDIR/pktmp.$$" 0 1 2 15
-
- mkdir $TEMPDIR
- cd $TEMPDIR
-
- if test -r $DESTDIR/$PKNAME
- then
- echo "$DESTDIR/$PKNAME already exists!"
- exit 0
- fi
-
- # check also in the standard place
-
- if test -r /usr/lib/tex/fonts/pk/$PKNAME
- then
- echo /usr/lib/tex/fonts/pk/$PKNAME already exists!
- exit 0
- fi
-
- echo mf "\mode:=$MODE; mag:=$MAG; scrollmode; input $NAME" \\\</dev/null
- mf "\mode:=$MODE; mag:=$MAG; scrollmode; input $NAME" </dev/null
- if test ! -r $GFNAME
- then
- echo "Metafont failed for some reason on $GFNAME"
- exit 1
- fi
-
- gftopk $GFNAME $PKNAME
-
- # Install the PK file carefully, since others may be doing the same
- # as us simultaneously.
-
- mv $PKNAME $DESTDIR/pktmp.$$
- cd $DESTDIR
- mv pktmp.$$ $PKNAME
-
- exit 0
-