Installing type1 and true type fonts in tetex-latex
Installing type1 and true type fonts in tetex-latex
http://www.panix.com/~elflord/unix/latex/no-bs.html was at http://www.pegasus.rutgers.edu/~elflord/unix/latex/no-bs.html
Run the ttf2pt1 utility on each of your true type fonts. If you are using the fonts for tex, you need to rename them. For example, if I am renaming the arial fonts for tex, I rename as follows:
arial farr8a arialbd farb8a ariali farri8a arialbi farbi8a Arialn farr8an
The first letter, f is the foundry. ( You can use f for all the fonts you add yourself. ) The second two are an abbreviation for the font name ( ar ). This is followed by the font weight ( r or b in this case ), then optionally a variant. In the case of true type fonts, the only variant you will encounter is i for italic. This is followed by the encoding scheme ( 8a ) and optionally an n to specify the font width.
So to generate the appropriate Type1 fonts from the arial fonts, you would issue the following commands:
ttf2pfa arial.ttf farr8a ttf2pfa arialbd.ttf farb8a ttf2pfa ariali.ttf farri8a ttf2pfa arialbi.ttf farbi8a ttf2pfa Arialn.ttf farr8an
This should spit out a lot of .pfa and .afm files. The .pfa files are the fonts, the .afm files are the font metrics.
Assuming you have the type1 fonts named correctly ( this is important ), you can prepare yourself to install them. To do this, use the fontinst utility:
latex `kpsewhich fontinst.sty`
Then you need to tell fontinst to build a
font by the name of your font family ( the first three letters of the font )
in the following manner:
\latinfamily{far}{}\bye
fontinst should spit out several .pl and .vpl files , as well as some font definition ( .fd ) files.
To do this, you simply run the following commands:
for X in *.pl; do pltotf $X; done for X in *.vpl; do vptovf $X; done
This should generate one .tfm file for ever .pl file and one .vf file for every .vpl file.
The vpl, pl, and mtx files generated by fontinst can be deleted now.
rm *.vpl *.pl *.mtx
You need to edit your psfonts.map file to tell dvips about the new font. To find this file, issue the command
kpsewhich psfonts.map
Add lines to it that look something like this:
farr8r ArialMT <8r.enc <farr8a.pfa farbi8r Arial_BoldItalicMT <8r.enc <farbi8a.pfa farb8r Arial_BoldMT <8r.enc <farb8a.pfa farri8r Arial_ItalicMT <8r.enc <farri8a.pfa farr8rn Arial_Narrow <8r.enc <farr8an.pfa
You will need to add one line to it for each pfa file ( ie each type1 font in your font family ). The first row is same as the full name of the font, but with 8a replaced by 8r. The second column is the name of the font. It is essential to get this right !!! To find out the name of the font, look in the corresponding .afm file.
\documentclass{article} \begin{document} \usefont{T1}{far}{m}{n}\selectfont \huge Testing a new font \dots the quick red fox jumped over the lazy brown dogs \end{document}
There are a number of possibilities that you can try in the usefont command weight/shape. To see what other shapes/weights are available, look in the .fd file.
In my experience, a lot of the “backyard” public domain Type1 fonts don't work. Don't waste your time with things that don't work. I recommend that you start out with true type fonts from relatively respectable sources ( Adobe, Bitstream, Monotype and Microsoft ). These shouldn't give you any trouble. For example, the Arial font worked like charm for me. Start with something that has a good chance of working, this is difficult enough to do right without you having to worry about whether the font will work or not. |
Now you can install it system wide. Your best bet is to look around your tex installation to find out where your fonts are installed. On my tetex installation, I have this setup:
/usr/share/texmf/fonts/type1 : type1 fonts ( ie pfa files ) /usr/share/texmf/fonts/tfm : tfm files /usr/share/texmf/fonts/vf : vf files /usr/share/texmf/tex/latex/psnfss : .fd files and .sty files
The tex root directory may vary ( replace /usr/share/texmf with your tex root directory ). You should make appropriate subdirectories under these directories, and place the files in them.
You may also wish to make some of your own .sty files to act as a more “user friendly” front end to font selection. Look at some of the existing *.sty files in your psnfss directory for inspiration
documented on: 2008-06-21