diff options
Diffstat (limited to 'Master/texmf-doc/doc/english/FAQ-en/html/FAQ-useMF.html')
-rw-r--r-- | Master/texmf-doc/doc/english/FAQ-en/html/FAQ-useMF.html | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/Master/texmf-doc/doc/english/FAQ-en/html/FAQ-useMF.html b/Master/texmf-doc/doc/english/FAQ-en/html/FAQ-useMF.html new file mode 100644 index 00000000000..543388de7c5 --- /dev/null +++ b/Master/texmf-doc/doc/english/FAQ-en/html/FAQ-useMF.html @@ -0,0 +1,106 @@ +<head> +<title>UK TeX FAQ -- question label useMF</title> +</head><body> +<h3>Getting Metafont to do what you want</h3> +<p>Metafont allows you to create your own fonts, and most TeX users +will never need to use it. Metafont, unlike TeX, requires some +customisation: each output device for which you will be generating +fonts needs a mode associated with it. Modes are defined using the +<code>mode_def</code> convention described on page 94 of <em>The Metafontbook</em> +(see <a href="FAQ-books.html">TeX-related books</a>). You will need +a file, which conventionally called <i>local.mf</i>, containing all the +<code>mode_def</code>s you will be using. If <i>local.mf</i> doesn't already +exist, Karl Berry's collection of modes (<i>modes.mf</i>) +is a good starting point +(it can be used as a '<i>local.mf</i>' without modification in a 'big +enough' implementation of Metafont). Lists of +settings for various output devices are also published periodically in +<i>TUGboat</i> (see <a href="FAQ-TUGstar.html">TUG</a>). Now create +a <code>plain</code> base +file using <i>inimf</i>, <code>plain.mf</code>, and <code>local.mf</code>: +<pre> + % inimf + This is METAFONT... + **plain # you type plain + (output) + *input local # you type this + (output) + *dump # you type this + Beginning to dump on file plain... + (output) +</pre> + +This will create a base file named <i>plain.base</i> (or something +similar; for example, it will be + + <i>PLAIN.BAS</i> +on MSDOS systems) which should be moved to the directory containing +the base files on your system (note that some systems have two or more +such directories, one for each 'size' of Metafont used). +<p>Now you need to make sure Metafont loads this new base when it starts up. If +Metafont loads the <code>plain</code> base by default on your system, then you're +ready to go. Under Unix (using the default <i>web2c</i> +distribution +) +this does indeed happen, but we could for instance define a command +<i>mf</i> which executes <code>virmf &plain</code> loading the <code>plain</code> base +file. +<p>The usual way to create a font with <code>plain</code> Metafont is to start +it with the line + +<pre> +\mode=<mode name>; mag=<magnification>; input <font file name> +</pre> +in +response to the '**' prompt or on the Metafont command line. (If +<code><mode name></code> is unknown or omitted, the mode defaults to 'proof' and +Metafont will produce an output file called + +<i><font file name>.2602gf</i>) +The <code><magnification></code> is a floating point number or +'magstep' (magsteps are defined in <em>The Metafontbook</em> and +<em>The TeXbook</em>). +If <code>mag=<magnification></code> is omitted, then the default +is 1 (magstep 0). For example, to generate cmr10 at 12pt for an epson +printer you would type +<pre> + mf \mode=epson; mag=magstep 1; input cmr10 +</pre> +Note that under Unix the <code>\</code> and <code>;</code> characters must usually be quoted or +escaped, so this would typically look something like +<pre> + mf '\mode=epson; mag=magstep 1; input cmr10' +</pre> +<p>If you don't have <i>inimf</i> or need a special mode that isn't +in the base, you can put its commands in a file (<em>e.g.</em>, +<i>ln03.mf</i>) and invoke it on the fly with the <code>\smode</code> command. +For example, to create <i>cmr10.300gf</i> for an LN03 printer, using +the file +<pre> + % This is ln03.mf as of 1990/02/27 + % mode_def courtesy of John Sauter + proofing:=0; + fontmaking:=1; + tracingtitles:=0; + pixels_per_inch:=300; + blacker:=0.65; + fillin:=-0.1; + o_correction:=.5; +</pre> +(note the absence of the <code>mode_def</code> and <code>enddef</code> commands), you would +type +<pre> + mf \smode="ln03"; input cmr10 +</pre> +This technique isn't one you should regularly use, but it may +prove useful if you acquire a new printer and want to experiment with +parameters, or for some other reason are regularly editing the +parameters you're using. Once you've settled on an appropriate set of +parameters, you should use them to rebuild the base file that you use. +<p>Other sources of help are mentioned in +<a href="FAQ-mfptutorials.html">Metafont and MetaPost Tutorials</a>. +<dl> +<dt><tt><i>modes.mf</i></tt><dd><a href="ftp://cam.ctan.org/tex-archive/fonts/modes/modes.mf">fonts/modes/modes.mf</a> +</dl> +<p><p>This question on the Web: <a href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=useMF">http://www.tex.ac.uk/cgi-bin/texfaq2html?label=useMF</a> +</body> |