%&latex

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%% This is the file mathkit.tex, part of the MathKit package
%% (version 0.7, January , 1998) for math font 
%% generation.  (Author: Alan Hoenig, ajhjj@cunyvm.cuny.edu)
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%% THIS IS A STANDARD LATEX + NFSS DOCUMENT FILE.

\documentclass{article}

\newcommand{\MathKit}{\textit{MathKit}}\let\mk=\MathKit
\font\logofont=logo10
\newcommand{\mf}{{\logofont META}\-{\logofont FONT}}
\def\fil|#1|{\texttt{#1}}
\def\ext|#1|{\texttt{.#1}}
\def\angles#1{$\langle${\normalfont\textit{#1}}$\rangle$}

\title{Hundreds of New Math Fonts with MathKit (version 0.7)}
\author{Alan Hoenig}
\date{May 5, 1997}

\begin{document}

\maketitle

\mk{} is an attempt to deal with typesetting mathematics
using fonts {\em other\/} than Computer Modern.  Till now, authors
have had few alternatives:
\begin{itemize}
  \item They can use CM math together with a text font family like Times
  Roman, but the result is not professional.
  \item They can use proprietary math fonts, such as MathTime or Lucida
  New Math, but that requires spending money.
  \item They can use the Euler math fonts, but these letterforms are a
  bit too idiosyncratic for some, and it is not well-known how to
  properly implement them anyhow.
\end{itemize}

\mk{} aids in the creation of math fonts which are compatible with a
text font family---that is, \mk{} can help you typeset a Baskerville
math document where the equations really look Baskerville-ish.
Depending on your choice of parameters, you also get {\bf bold} math
fonts.  \mk{} consists of a Perl script and some auxiliary files to
help an author---even one ignorant of virtual fonts or of \mf---to
perform these tasks.  (In case you have MathTime, Lucida New Math,
Euler, or Mathematica math fonts, you might wish to check out the
author's {\it MathInst\/} tools for installing these fonts.  This
material is available from the {\tt fonts/utilities/mathinst} section
of {\sc ctan}.)

The current version fixes some bugs from the previous version.  I am
grateful to several excellent and vigilant bug-catchers, including
David Ness, Dave Rebnord, Petr Sojka, Jose Iovino, and Richard
Townsend.

\section{What it does}
\mk{} takes \mf{} parameters that are appropriate to an outline font
family and uses these to create new math fonts with \mf.  The symbols
and other special characters in these new fonts look pretty good---and
are compatible with your outline fonts---but the italics and numerals
look ghastly.  Fortunately, that's not a problem.  Using virtual
fonts, we manufacture math fonts that combine the new special symbols
(done by \mf{} that look pretty good) with letters and numerals from
the outline fonts while we throw away all the ghastly stuff.  \mk{}
does this work for you; it provides scripts for the remaining steps
(all this is described below). It also provides style files for plain
\TeX{} and for the NFSS of \LaTeX{} for you to use these fonts in your
documents.  {\em You don't need to know anything about \mf{} or
virtual fonts to use \mk{} and the resulting fonts.}

This version of \mk{} comes with three sets of font templates.  Since
Palatino and Times Roman are so common, I prepared templates for these
fonts.  For fun, I prepared a template for Monotype Baskerville.
Times comes in regular and bold series, and Baskerville in regular and
semibold; Palatino is regular only.

However, I have had excellent luck matching one of the templates with
a non-related text family.  The Baskerville-like template matches
Monotype Janson and Adobe Caslon very nicely, for example.
Consequently, it's possible to generate not three new math font
families, but {\it hundreds\/} of them, as the title to this document
proclaims. 

\section{What you get as final output}
\mk{} itself produces lots and lots of scripts and batch files.  Once
these are properly executed (see below for the exact procedure) you
get the following:
\begin{enumerate}
  \item Virtual fonts for math and text typesetting.  You will also
  get fonts for
  bold math if you have supplied a template containing bold parameters.
  \item Style files for plain \TeX{} and \LaTeX{} (NFSS).  
  These files support bold math if bold parameter
  templates were present.
\end{enumerate}

\section{What you'll need}
\subsection{\TeX{} and MetaFont}
You'll need current versions of \TeX{} and \mf, first off.  They must
be sufficiently recent to support virtual fonts.

\subsection{\texttt{fontinst}}
You'll need a version~1.5 of \texttt{fontinst}, available from any
{\sc ctan} archive or mirror.  To install this software, retrieve {\it all\/}
files from the 
\begin{verbatim}
fonts/utilities/fontinst/inputs
\end{verbatim}
area.  If you
have a traditional \TeX\ system, place these files with the other
files that \TeX\ reads in a directory like `{\tt tex/inputs}'.  In a
{\sc tds} system, place them in
\begin{verbatim}
texmf/tex/generic/fontinst
\end{verbatim}

\subsection{pdcfsel}
If you use plain \TeX, you'll need Damian Cudgley's \texttt{pdcfsel}
font selection macros.  These can be found in the 
\texttt{macros/plain/contrib/pdcmac} section of
\textsc{ctan}.  From this directory, fetch the files \fil|pdccode.tex|
and \fil|pdcfsel.dtx| and place both files in a \TeX{} work directory.
Then, issue a command like
\begin{verbatim}
tex pdcfsel.dtx
\end{verbatim}
In a moment, you'll get two new files---\fil|pdcfsel.dvi|, from which
you can typeset documentation for this package, and \fil|pdcfsel.tex|,
which you should 
place in a directory that 
\TeX{} can read from, a place like `{\tt tex/inputs}' in a
traditional \TeX\ system, or a place like 
\begin{verbatim}
texmf/tex/plain/pdcfsel
\end{verbatim}
in a {\sc tds} system.

\subsection{Perl5}
You'll need version~5 of Perl, a freely-available utility for all
computer platforms and easily obtained from many computer archives and
{\sc cd-rom} software collections.  Perl needs installation as well.
This is simply a matter of placing the Perl executable somewhere on
your computer's search path.

\subsection{\texttt{fontname}}
Your text fonts need to have been installed using Karl Berry's
fontnaming conventions.  Furthermore,
these fonts must have been installed following the original \TeX\
encoding, often denoted {\tt OT1} or {\tt ot1}.  Some ways to perform
this installation are {\tt psnfss} or {\tt VFinst} (see the 
\begin{verbatim}
fonts/utilities/vfinst/
\end{verbatim}
area of {\sc ctan}).

\subsection{Other utilities}
You'll need to insure you have working copies of the \TeX ware
utilities \texttt{tftopl} and \texttt{vptovf} which should already be part of
your \TeX{} installation.  Make sure both these executables are 
in some part
of your computer's search path.

\section{Installation}
Installation of \mk\ consists of three steps.
\begin{enumerate}
  \item Prepare a directory, called something like \texttt{mathkit}
  perhaps, to hold all the \mk{} files.  Place all the \mk{} files here. 
  \item Prepare a work directory below this.  Switch to this directory
  to do all your work.  (The \mk{} package consists of this file
  \fil|mathkit.tex|, a file \fil|readme|, the main Perl script
  \fil|mathkit|, some files \fil|greekoff.mtx| and
  \fil|alphoff.mtx| used by \texttt{fontinst}, some template files
  \fil|ztex.mk|, \fil|zsty.mk|, \fil|makevp.mk|, 
  \fil|tm.mkr|, \fil|tm.mkb|, \fil|pl.mk|,
  \fil|bv.mkr|, and \fil|bv.mks|, plus some miscellaneous other stuff.)

(These instructions assume that your implementation of \TeX{} knows to
search the parent directory to the current directory to look for files
it may need to read.  If this is not the case---and you'll know when
you execute the `{\tt tex}' step, as \TeX\ won't be able to find files
in the {\tt mathkit} directory---you'll need either to adjust \TeX's
search path or to place copies of all the \mk{} files in the work
directory.) 

\item Finally, there are a few parameters that need {\em careful\/}
adjustment at the beginning of the file \fil|mathkit.par|.  \mk{}
needs to know some system things---where are the \ext|tfm|'s kept for
this text font family, where are \mf{} input files kept, what is the
\mf{} mode you require (that is, what printer will you be preparing
fonts for?), and are you running under Unix or DOS?  This file is
self-documenting, so consult it for details.  Briefly, it needs seven
categories of information:
\begin{enumerate}
  \item Is this a {\sc tds} installation?  If so, what are the
  suppliers, typefaces, and installers for your fonts?
  \item Where are the \mf{} source files found?
  \item For {\it non}-{\sc tds} systems only, where are \TeX's special
  file types ({\tt.tfm}, {\tt.vf}, etc.) found?
  \item What's the name of of the \mf{} executable?  
  What is the \mf{} mode?  How are \mf{} output files named?
  Where do these files belong?  This requires additional
  discussion---see below.
  \item Is this Unix or {\sc dos}?  If you are using yet a different
  operating system, you'll need to create a subroutine named for this
  other system and modelled after the routines you'll find at about
  line~46 in the file \fil|mathkit|.
  \item Should \mk{} try to match \mf{} parameters to your text fonts?
  The answer should almost assuredly be `no'.
  See below for additional discussion.
  \item What is the sans serif font you'll be using with your fonts?  We
  will also need the directory names for its supplier and typeface, in
  case your system is a {\sc tds} system.
\end{enumerate}
\end{enumerate}

\subsection{Mode and other Metafont information}
Most of the time, the \mf{} executable is called `{\tt mf}'; in such
cases, set the variable \texttt{\$mf} in the file {\tt mathkit.par} 
to the value \texttt{"mf"}.  On some systems, it may have other names,
such as \texttt{virmf}.  Adjust the value of \texttt{\$mf}
accordingly. 

The \mf{} mode refers to a group of parameters especially adjusted to
match your computer's printer.  Modes are named with strings that
suggest their corresponding printer---for example, {\tt imagen}, {\tt
hplaser}, and so on.  If you don't know which \mf{} mode corresponds
to your printer, you'll have to inspect (with an editor) the file
\fil|local.mf| or some file like that that appears in your \mf{}
inputs directory.  Probably the most important of the mode parameters
is one called \verb+pixels_per_inch+ which ensures that \mf's bitmaps
match your printer's resolution.  At the very least, you'll need to
choose a mode whose value of \verb+pixels_per_inch+ matches your
printer's resolution. The name of the mode is the string following the
command \verb+mode_def+ which appears a few lines above.  

In case, no mode is useful, you'll have to create your own mode.
Duplicate one of the modes in \fil|local.mf|, and just change the name
of the mode and the value of \verb+pixels_per_inch+.  Then, you'll
have to re-install \mf{} using {\tt inimf}.  

You'll also need to supply your printer's resolution.  In \mk, this is
called {\tt\$dpi} in the file \fil|mathkit.par|.  It corresponds to
the \mf{} variable \verb+pixels_per_inch+.

\subsection{Matching (additional information)}
All but super-power-users should keep the parameter 
\begin{verbatim}
$I_should_try_to_match
\end{verbatim}
commented out at
all times.  Otherwise, it is easy to generate successively different
copies of \mf{} source files, all with the same name.  Consequently,
the most recent creation obliterates its predecessors and will make it
well-nigh impossible to regenerate early versions of your new pixel
fonts. 

For those with intestinal fortitude of the first rank, here's an
explanation.  Although only three font templates currently accompany
\mk, it is possible to use a template with another text font family.
I have had good results, for example, using the {\tt bv}
Baskerville-like template with both Monotype Janson and Adobe Caslon
fonts.  Of course, the $x$-height, cap-height, and so on of the Janson
or Caslon fonts won't math the corresponding parameters for the
Baskerville fonts.  However, if the parameter
\begin{verbatim}
$I_should_try_to_match
\end{verbatim}
is set to a non-zero, non-null value, then \mk{} will use all the
template parameters together with the $x$-height, etc.\ of the text
fonts.  This may ensure even closer compatibility between the math and
text fonts.  In case it doesn't, you can always re-generate the math fonts
with this parameter turned off.  Although it probably sounds like a
good idea to keep this parameter switched on, it leads to a
proliferation of \mf\ files that are slightly different but have the same
filenames (see above; any readers with suggestions for dealing with
impasse should please get in touch with me).

\subsection{Special fonts}
\mk{} also makes it possible to typeset with some special font types,
including blackboard bold, calligraphic, fraktur, typewriter
mono-spaced, and sans serif, and will provide typesetting commands for
these fonts provided they exist.  Except for sans serif, though, you
have relatively little choice in which kinds of fonts to install.
Here's what \mk{} expects:

\begin{itemize}
  \item \mk{} uses the calligraphic alphabet in the Computer Modern
  symbol fonts.
  \item The typewriter font must be installed under the name {\tt
  cmtt10}, and you will need an outline form of this font.  
  \item You'll need the {\tt eufm10} Euler Fraktur font in outline form
  for Fraktur typesetting.
  \item You'll need the \mf{} source for Alan Jeffrey's blackboard bold
  fonts for blackboard bold typesetting.
  \item You have much greater freedom for sans serif fonts, as discussed
  above. 
\end{itemize}
These fonts and font sources are all available on \textsc{ctan}. 

In non-\textsc{tds}, installation means placing the {\tt.afm} files in
a directory like {\tt/psfonts/afm} and the outline files in a place
like {\tt /psfonts}.  \mf{} sources belong somewhere named like {\tt
/mf/inputs}.  In a \textsc{tds} system, locations are more carefully
defined.  Computer Modern--math symbols and typewriter---belongs 
in a place like
$$\hbox{\tt\angles{texmf}/fonts/\angles{type1-or-afm}/public/cm}$$
The Euler Fraktur fonts belong in
$$\hbox{\tt\angles{texmf}/fonts/\angles{type1-or-afm}/ams/euler}$$
Finally, the blackboard bold source fonts belong in
$$\hbox{\tt\angles{texmf}/fonts/source/public/bbold}$$

\section{Executing the software}
The main \mk{} script requires three parameters at the command line.
These are:
\begin{enumerate}
  \item The name of the parameter template.  `{\tt tm}' refers to Times-like
  parameters, `{\tt pl}' to Palatino-like, and `{\tt bv}' to Baskerville-like.
  \item The name under which text fonts are installed.  This is apt to
  be something like \texttt{ptm} or \texttt{mnt} for Adobe Times or
  Monotype Times New Roman, \texttt{ppl} for Palatino, and \texttt{mbv}
  for Monotype Baskerville (which is {\em quite\/} different from 
  ITC New Baskerville).  As mentioned above, though, you are welcome
  to any properly installed text font family as well.  Simply specify
  its {\tt fontname} abbreviation at the command line.
  \item The encoding your fonts follow.  Only \texttt{OT1} (original
  \TeX{} encoding) or maybe \texttt{ot1} are currently allowed.  Use
  {\tt ot1} if your system doesn't allow uppercase file names.
\end{enumerate}
For example, I type
$$\hbox{\tt perl ../mathkit tm ptm OT1}$$
in my work directory 
to create Times-like fonts following the original \TeX{} encoding.
(If your system supports the \verb1#!1 syntax for specifying the name
of an interpreter, then adjust the proper path at the very top of
the \fil|mathkit| script, make sure the execute bit is set, and type the
simpler injunction \texttt{../mathkit tm ptm OT1} from the work
directory.)  To create my Janson/Baskerville fonts, I typed
\begin{verbatim}
../mathkit bv mjn OT1
\end{verbatim}
at the command line.

Currently, you get bold math fonts {\em except} if you choose the
Palatino-like {\tt pl} template.

\section{Making the fonts}
The following steps complete the font creation.  Perform them all
within the \mk{} work directory.
\begin{enumerate}
\item Execute the file \fil|makegf.bat| to have \mf{} 
create the pixel fonts for
your fonts.  This step will take some time.
\item You'll need to pack all the pixel files.  Inside Unix, you can
do this via a series of commands like
\begin{verbatim}
foreach X (*.600gf)
foreach? gftopk $X $X:r.600pk
foreach? end
\end{verbatim}
Not all operating systems are so accommodating, so there is a file
called \fil|makepk.bat| which may be helpful in this regard.  {\bf Caution:}
before executing this script, it will almost surely be necessary to edit it.
\item Execute the script \fil|makepl.bat| to create some property list
files needed by \TeX.
\item Run the file \fil|makevp.tex| through \TeX.  That is, execute
the command \texttt{tex makevp} or something appropriate for your
system.  This step will take lots of time.  Along with lots of
superfluous files, this creates many `virtual property list' files
with extension \ext|vpl|. 
\item Create the actual virtual files by running every \ext|vpl| file
through the program \texttt{vptovf}.  You can do this easily in Unix
with commands like
\begin{verbatim}
foreach X (*.vpl)
foreach? vptovf $X $X:r.vf $X:r.tfm
foreach? end
\end{verbatim}
Even easier---execute the file \fil|makevf.bat| that \mk{} creates for
you. 
\item Test your fonts by running the files \fil|testmath.tex|
(for \LaTeX\ users) or \fil|testmatp.tex| (plain \TeX) through \TeX\
and then printing it.  
If adjustments are necessary,
return to the `{\tt tex makevp}' step (step~4), and proceed from that point
onward.  Adjustments to your fonts will be discussed below.
\item Only when you are completely satisfied with your new fonts
should you execute the script {\tt putfonts.bat} to place font files
and style files to their proper places.
\end{enumerate}

That leaves behind still files with extensions \ext|log|, \ext|mtx|,
\ext|pl|, \ext|vpl|, \ext|bat|, \ext|300gf| (or something similar) and
several other miscellaneous other files.  You may safely
delete all these.  

\subsection{Fine tuning and character adjustment}
The only adjustment that should be necessary are spacing adjustments
to improve the appearance of over-the-character accents, subscripts, and
character placement.  The two test files that enable you test this are
\fil|testmath.tex| (for \LaTeX) and \fil|testmatp.tex| (plain).
Run one of these files through \TeX, and examine the printed output
carefully.  

\mk{} will have made two or more adjustment files for you 
that facilitate making changes to
character spacing.  These files are named following this mysterious
convention:
$$\hbox{\tt\angles{mock}\angles{text-fonts}\angles{weight}%
  \angles{r-or-i}\angles{w-or-x}.mtx}$$
Here, \angles{mock} should be replaced by the template type (currently
{\tt bv},
{\tt tm}, or {\tt pl}); \angles{text-fonts} should be replaced by the
three-character text font family designation; \angles{weight} will be
{\tt r} or {\tt b} (regular or bold weight); \angles{r-or-i}
will be {\tt r} or {\tt i} as the changes are to be applied to math
roman or math italic fonts; and \angles{w-or-x} makes changes to
(skew) over-character accents or to glyph widths and subscript
placement.  (In an earlier incarnation of this package, the metric
adjustment files contained these and other ha\texttt{x} (hacks);
hence the `x'.  The `w' should suggest the ske\texttt{w} adjustments
for accents.  It's necessary to put this material in two distinct
files so that the virtual font making mechanism reads the
adjustment information at different points in its cycle.)  
For example, for my Janson-compatible ({\tt mjn}) 
math fonts using the
{\tt bv} template, I use file
\begin{verbatim}
bvmjnriw.mtx
\end{verbatim}
to adjust the positioning of the skew-type overhead accents like the
vector arrow and tilde for the math italic font, while I use 
\begin{verbatim}
bvmjnbrx.mtx
\end{verbatim}
to make changes to glyph widths and to subscript placement for math
roman fonts used in the math bold series.  

Even if you re-install math fonts, \mk{} takes care not to overwrite
pre-existing adjustment files.  

Changes are mostly a trial-and-error affair.  The first time you
create a set of math fonts, \mk{} creates a set of adjustment files in
which all the change commands are commented out.  To make changes,
enter the appropriate file and read what each file has to say about
the \verb+\shiftglyph+ or \verb+\skewkern+ commands which are found
there.  

Once you've made all your changes, re-run the steps from `{\tt tex
makevp}' (step~4) to the point where you print a copy of the test file
(step~6), and
then make additional changes as needed.

Of course, it's always possible to settle for fine-tuning your
manuscripts, but it's better to spend the time tuning the fonts
instead.  It's nevertheless a good idea to get familiar with \TeX's
\verb+\skew+ command (see page~136 of {\it The \TeX book}) which is
helpful in this regard, as are the many math space commands.

Font mongers note: you may be able to fine tune the characters
themselves by adjusting
the parameter values in the {\it template\/} files to other than what I've
provided.  Feel free!  If you find a particularly fine bunch of values
different from what I've provided, I'd be grateful if you passed them
along to me.

\subsection{Names of the new fonts}
\mf{} will make many new fonts with names like the usual Computer
Modern fonts, except the first two letters will be replaced by the
abbreviation you specified in the \mk{} command.  Thus, when making
Times-like fonts, you'll be making new fonts {\tt tmr10}, {\tt
tmbx10}, and so on for other varieties and sizes.  There will be some
bold variants of these if you've provided a bold parameter template.
Palatino-like variants would be named {\tt plr10}, and so on, while
Baskerville-like variants are {\tt bvr10}, etc.  Some of these new
bitmaps will be raw fonts for new virtual fonts that \mk{} creates.  

There will be lots of new virtual fonts for Math roman and italic (and
perhaps in bold variants).  These fonts have names beginning with the
font family indicator (such as {\tt ptm} or {\tt mbv}), a weight
indicator ({\tt r} or {\tt b} for regular or
bold), a single letter referring to the bitmaps that have been
incorporated (this will be the first of the two letter abbreviation
for the bitmap family; that is, {\tt b}, {\tt t}, or {\tt p} for
Baskerville, Times, or Palatino), an encoding digit (7 for {\tt OT1} or {\tt
ot1} encoding), a further encoding symbol (either {\tt t} or {\tt m}
for text or math italic), and a character for the font size (no digit
for ten-point, a single digit for smaller design sizes, and a `c',
hexadecimal digit representing `12', for the 12-point size).  Thus, my
Janson/Baskerville math italic fonts have names {\tt mjnrb7mc}, {\tt
mjnrb7m}, {\tt mjnrb7m9}, {\tt mjnrb7m7}, and {\tt mjnrb7m5} for the
fonts at 12\thinspace pt, 10\thinspace pt, 9\thinspace pt, 7\thinspace
pt, and 5\thinspace pt.

All font
names are eight characters long or less.

\section{Using your new fonts}
\mk{} produces two style files, one for \LaTeX{} and one for plain.
Their file names are formed according the naming scheme
  $$\hbox{\tt z\angles{mock-family}\angles{font-family}}$$
Here, \angles{mock-family} is the two-character designation for
one of the font parameter templates (such as \texttt{tm}, \texttt{pl},
or \texttt{bv}); the word `mock' refers to the fact that these fonts
imitate but don't equal the actual fonts in this family. 
\angles{font-family} is the Berry family
desgnation.  Thus, if I create a Times-like set of fonts for use with
font family \texttt{ptm}, I would find files \fil|ztmptm.sty| (\LaTeX)
and \fil|ztmptm.tex| (plain).  In the same way, the style files for
mock-Palatino and mock-Baskerville fonts are named \texttt{zplppl} and
\texttt{zbvmbv} (with the appropriate extensions).  Style files for my
Baskerville/Janson math fonts have names beginning with {\tt zbvmjn}.  

\subsection{Plain \TeX{}}  
At the top of your file, include the statement
\begin{verbatim}
\input ztmmnt
\end{verbatim}
(or whatever the style file name is).  Then, standard font nicknames
like {\tt\string\it} and {\tt\string\bf} and math toggles {\tt\$} and
{\tt\$\$} will refer to these new fonts.

If bold fonts have been generated, a command \verb!\boldface! typesets
everything in its way in boldface---prose, mathematics, whatever.
Bold math may be appropriate for bold captions, sections heads, and
the like.  Like any other font changing command, this command should
be placed within grouping symbols.

\subsection{\protect\LaTeX{} and NFSS}
You simply need to include the style name as part of the list of
packages that you use in the document.  Thus, a typical document would
have a statement like
\begin{verbatim}
\usepackage{ztmptm,epsf,pstricks,...}
\end{verbatim}
at the outset.

If \mk{} has created bold math fonts for you, a \texttt{boldface}
environment will typeset everything in that environment as bold,
including all mathematics. 

Occasionally, you will need to find tune a file or two by hand.  If
your outline fonts have been installed using expert fonts, you may
need to alter the \verb+\rmdefault+ command.  It might be necessary,
say to type
\begin{verbatim}
\rmdefault{ptmx}
\end{verbatim}
instead of \verb!\rmdefault{ptm}!. 

In files named like \texttt{OT1\angles{whatever}.fd} it may be
necessary to replace the \texttt{bx} series designation by \texttt{b}.
Or it may be necessary to add entries at the bottom instructing NFSS
to substitute fonts in the \texttt{bx} series with fonts in a {\tt b}
or {\tt sb} (bold or semibold) series.

\section{Math support for other font families}
The parameters for the font families are contained in files with names
like \fil|tm.mkr|, \fil|tm.mks|, or 
\fil|tm.mkb|.  The extensions refer to `\mk{}
regular', `\mk{} semibold', or `\mk{} bold' sets of parameters.  The
current \mk{} assumes that you will be creating at most 
one of the set of bold or semibold fonts but not both.

It was surprisingly easy to prepare these parameter files.  I prepared
a test document in which individual characters are printed on a
baseline at a size of 750\thinspace pt.  It's (relatively) easy to
measure the dimensions of such large characters, and \mf\ can be asked
to divide by~75 to compute the proper dimension for ten point fonts.
It was particularly easy for me to make these measurements, as I use Tom
Rokicki's superior implementation of \TeX{} for NeXTStep.  This
package contains onscreen calipers which take all the work out of this
chore. 

If you plan to create your own parameter files for other font
families, please use the supplied files as models.  Make sure all
measurements are given in terms of sharped points 
`\texttt{pt\#}'; \mk{} looks for
this string.  And please
consider placing this information in {\sc ctan}.

\section{In conclusion...}
For additional information, please see the book {\it \TeX\ Unbound:
\LaTeX\ and \TeX\ Strategies for Fonts, Graphics, and More} (1998) by
Alan Hoenig, published by Oxford University Press.

This software is issued as is, subject to the usual Gnu copyleft
agreement. 

If you have any questions, comments, or bug reports, please send them
along to me.

\begin{flushright}
Alan Hoenig\\
Department of Mathematics,\\ John Jay College\\
445 West 59 St.\\
New York, NY 10019\\
(516) 385-0736 or (212) 237-8858; \texttt{ajhjj@cunyvm.cuny.edu}\\[9pt]
January 1998
\end{flushright}

\end{document}
