need lots of TeX fonts
Stefan Farestam
farestam at ORION.CERFACS.FR
Tue Mar 19 20:40:13 AEST 1991
>We recently downloaded the TeX distribution front vgr.brl.mil and it
>seems to work ok. Our only problem is that the distribution apparently
>doesn't include enough different fonts for our purposes. Specifically,
>this tends to cause the dvi-to-postscript step to choke because it
>can't find font such-and-such. (TeX per se works just fine.)
>Is there some site from which we can download every conceivable font that
>we might want to use?
I think labrea.stanford.edu has a good deal of fonts
>We don't know very much at all about the great
>inner mysteries of how TeX works, so please excuse the following
Well, who does ?
>Dumb Questions:
>(1) Is a font a font, or do we need certain kinds of fonts, e.g.
> for a particular system or printer?
Your dvi-to-ps usually likes either gf or pk fonts. (one being
transferable to the other by using pktogf or gftopk). But even
those fonts comes in different varietes, and yes they are tailored
for different printers, because the way of printing differs from
printer to printer. I believe the fonts on labrea are made for the
Canon print engine, which is in all of the apple laserwriters. If
you have a laser writer different from that, then you'll have to redo
the fonts yourself (probably) by using mf (see below)
>(2) Is there anything special that needs to be done to install the
> fonts, or do we just ftp the fonts and shove 'em in a directory
> that looks like the right place?
I guess that's basically the procedure. (i.e. just ftp to the right
place, unless what I stated above applies)
>(3) Anything else we should be aware of?
There probably is (someone else ?)
Anyway, below is a script that I use myself to maintain fonts. It makes
new fonts according to your needs.
Usage: The first column is the name of the font, in the second you mark
the sizes available (in mf format), and in the third you mark off
the magnifications wanted. Adjust the paths to what is true
locally, and if your setup requires gf files, then add
set gfdir = /usr/local/lib/tex/fonts/gf
/bin/mv -f $font'.'$gmag'gf' $gfdir
and remove
$gftopk $font'.'$gmag'gf'
/bin/mv -f $font'.'$gmag'pk' $pkdir
/bin/rm -f $font'.'$gmag'gf'
Note that to recreate all your fonts woth this file takes a loooooong
time. Make nohup, and go home and sleep...
If you have another print engine than the default, then you'll have to
take a look in the file that (cm)mf uses to define the fonts and change
the $mode accordingly. (On my system it's the file U_Wash.mf in
/usr/local/lib/mf/inputs, and there localfont is set to CanonCX) A
common thing to do is probably to set mode = RicohFourZeroEightZero, or
some other write-white machine, to produce fonts that look good on
a screen with black text and white background
________________________________________________________________________
#!/bin/csh -f
# Script to maintain fonts for tex
# Stefan Farestam, Nov 1990
if ($#argv == 0) then
# * marks a nonexistant mf file
$0 'cmb {* * * * * 10 * *} _ {-1,0,0.5,1,2,3,4,5}'
$0 'cmr {5,6,7,8,9,10,12,17} _ {-1,0,0.5,1,2,3,4,5}'
$0 'cmbx {5,6,7,8,9,10,12 *} _ {-1,0,0.5,1,2,3,4,5}'
$0 'cmex {* * 7,8,9,10 * *} _ {-1,0,0.5,1,2,3,4,5}'
$0 'cmmi {5,6,7,8,9,10,12 *} _ {-1,0,0.5,1,2,3,4,5}'
$0 'cmmib {5,6,7,8,9,10 * *} _ {-1,0,0.5,1,2,3,4,5}'
$0 'cmss {* * * 8,9,10,12,17} _ {-1,0,0.5,1,2,3,4,5}'
$0 'cmssi {* * * 8,9,10,12,17} _ {-1,0,0.5,1,2,3,4,5}'
$0 'cmtt {* * * 8,9,10,12 *} _ {-1,0,0.5,1,2,3,4,5}'
$0 'cmti {* * 7,8,9,10,12 *} _ {-1,0,0.5,1,2,3,4,5}'
$0 'cmsy {5,6,7,8,9,10 * *} _ {-1,0,0.5,1,2,3,4,5}'
$0 'cmbsy {5,6,7,8,9,10 * *} _ {-1,0,0.5,1,2,3,4,5}'
$0 'cmsl {* * * 8,9,10,12 *} _ {-1,0,0.5,1,2,3,4,5}'
else if ("$1" =~ *' '*) then
$0 `echo "$1" | tr -d ' *'`
else
setenv MFINPUTS /usr/local/lib/mf/inputs
set mode = localfont
set res = 300
set mf = /usr/local/bin/cmmf
set gftopk = /usr/local/bin/gftopk
set tfmdir = /usr/local/lib/tex/fonts/tfm
set pkdir = /usr/local/lib/tex/fonts/pk
foreach arg ($argv)
set font = `echo $arg | awk -F_ '{print $1}'`
set mag = `echo $arg | awk -F_ '{print $2}'`
set gmag = `true | awk "END {print int($res*exp($mag*log(1.2))+0.5)}"`
if (! -e $pkdir/$font'.'$gmag'pk') then
if (-e $MFINPUTS/$font'.mf') then
echo '-> '$font'.'$gmag'pk'
$mf "\mode=$mode; \mag=magstep($mag);" input $font > /dev/null
$gftopk $font'.'$gmag'gf'
/bin/mv -f $font'.'$gmag'pk' $pkdir
/bin/mv -f $font'.tfm' $tfmdir
/bin/rm -f $font'.'$gmag'gf'
/bin/rm -f $font'.log'
else
echo $font'.mf nonexistant'
endif
endif
end
endif
More information about the Comp.sys.sgi
mailing list