On Thursday 27 July 2006 02:37 am, Juergen Spitzmueller wrote:
> Rich Shepard wrote:
> > Years ago, I started working my way through the font installation guide
> > (trying to take advantage of the NFSS), but gave up about half-way
> > through. Has it become easier in the past few years to add a new font
> > family to TeX/LaTeX/LyX? Specifically, I want to add the Baker Signet
> > typeface (which I installed as both Type1 and TTF those same years ago
> > when I bought the Bitstream font collection).
>
> If you're lucky, someone already did the implementation. My first place is
> always the (German) page from Walter Schmidt, the PSNFSS maintainer, who
> provides packages for a range of common commercial fonts, and the quality
> of the metrics is very good:
> http://home.vr-web.de/was/fonts.html
>
> Unfortunately, Baker Signet is not included. If you have to implement them
> yourself, here are some pointers:
> http://www.tex.ac.uk/cgi-bin/texfaq2html?label=instt1font
> ftp://cam.ctan.org/tex-archive/info/Type1fonts/fontinstallationguide/fontin
>stallationguide.pdf
>
> Hope this helps,
> Jürgen

Having never installed a font into TeX/LaTeX/LyX, I was surprised to hear this 
was so complex as to be avoided if possible. So I just read the referenced 
documents. I think much of it can be automated into a Perl, Python or Ruby 
script (if I'm gonna write it, I prefer Ruby or maybe Perl).


The first module would be to test that everything is present. In what 
directory are the new fonts? Does that directory contain both the font files 
and the AFM files? Any other sanity checks would be put here. If it fails, a 
REALLY DESCRIPTIVE message of what's wrong and what needs to be done will be 
printed.
/*make prepare*/

The next module walks the user through Berry name renaming, giving very 
descriptive prompts explaining exactly what to do, and why. The user fills in 
everything, and then the files are renamed. This step also generates a TeX 
file to control Fontinst.
/*make berry*/

The next module runs Fontinst to generate font metrics and virtual fonts in 
human readable form, and then run pltoft to create tfm files and vptovf to 
create the vf files.
/*make metrics*/

The next module installs the fonts in the local tree. I very strongly 
recommend that the user be given the choice of specifying a directory in his 
data tree, and then symlinking that directory into the tree. In that way, the 
user doesn't need to go through Berry renaming if he gets a new computer or 
upgrades his texmf or whatever.
/*make copyfonts*/

The next module creates and installs map files for dvips, pdftex and xdvi.
/*make mapfiles*/

The next and final module runs texhash.
/*make texhash*/


IMHO this should be done as a simple state machine, which, for each font or 
font family, keeps track of which steps have been done. I could probably make 
such a state machine, but I have a feeling that someone really proficient 
with make files could do that a lot better. The make targets should be named 
very intuitively, and documented well.

Once again, I feel VERY strongly that these custom fonts should be built and 
stored in a data tree, and simply symlinked into the font trees. That way, 
this work will survive TeX updates and computer migrations. Even though this 
script will simplify things, from my reading the Berry filename renaming will 
ALWAYS be confusing and time consuming (if one wants to get it right).

I won't have any time before August 15, but maybe after that I can start on 
some of this if someone reminds me. The modular nature means several people 
can each do a piece. Anyone out there really good at make files?

Thanks

SteveT

Steve Litt
Author: 
   * Universal Troubleshooting Process courseware
   * Troubleshooting Techniques of the Successful Technologist
   * Manager's Guide to Technical Troubleshooting
   * Twenty Eight Tales of Troubleshooting
   * Rapid Learning: Secret Weapon of the Successful Technologist

http://www.troubleshooters.com/bookstore
http://www.troubleshooters.com/utp/tcourses.htm

Reply via email to