mfmodes.conf.5


NAME

mfmodes.conf - PPR's MetaFont modes identification file


DESCRIPTION

This file is used by ppad when setting the default filter options. One of the default options is mfmode=. The mfmode= option is used by the DVI filter to select an appropriate MetaFont mode for a given printer.

Before consulting this file, ppad reads the printer's PPD file and extracts the values from the following lines:

*Product: *ModelName: *NickName: *DefaultResolution:

The extracted values are then compared to values on lines in the mfmodes.conf file. Each line in the mfmodes.conf file has the following format:

product:modelname:nickname:resolution:mfmode

The file is read top to bottom until a match is found or the end is reached. The information from the PPD file is compared to the first four fields of each line. A ``*'' may be used as a wildcard in any or all of the first four fields. When a match is found, the value from the fifth field is used as the value for the default filter option ``mfmode=''.

Identification by Product

The *Product: line from the PPD file generally identifies the manufacturer and model line of which the printer is a part. Since all printers which use one product string generally use the same print mechanism, this parameter alone is usually enough to make selection of the correct MetaFont mode possible. For this reason, most entries in the mfmodes.conf file will have the product field filled in but the modelname, nickname, and resolution fields will all be ``*''.

For example, the following line:

LaserJet 4:*:*:*:ljfour

will match if the ``*Product:'' line from the PPD file has a value of "(LaserJet 4)". The fact that fields two through four contain astrisks indicates that any value is acceptable for product, modelname, and resolution.

Identification by ModelName

The GhostScript interpreter has a product string of ``Ghostscript'' or "Alladin GhostScript". Therefor, the printer must be identified by means of its PPD files ``*ModelName:'' line. Here are some reasonable configuration lines for printers driven by Ghostscript:

*:Dot Matrix 24 pin Ghostscript:*:*:NEChi *:HP LaserJet III Ghostscript:*:*:CanonCX *:HP DeskJet 500 Ghostscript:*:*:HPDeskJet

Identification by NickName

The ``*NickName:'' parameter in a PPD file starts out identical to the ``*ModelName:'' line. You might change it if you make a special hacked-up copy of the PPD file for a particular printer. For example, you might change it to ``David's HP DeskJet 500 Ghostscript''.

There are valid reasons for using a modified PPD file, but why changes to the PPD file should dictate a different MetaFont mode is hard to say. (Changes to the ``*DefaultResolution:'' line are covered by the next section.) Unless you know a good reason not to, you should always put a ``*'' in this field.

Identification by Resolution

Generally, you can just put ``*'' in the resolution field. There are however two possible reasons for filling in the value from the PPD file's ``*DefaultResolution:'' line.

One is if the printer's resolution can be changed. A change in resolution requires a change in the MetaFont mode. You might have several different PPD files for the same make and model of printer, one for each resolution. Here is a (fictitous) example:

*:HP LaserJet III Ghostscript:*:300dpi:CanonCX *:HP LaserJet III Ghostscript 150DPI:*:150dpi:ljlo

The other reason for putting a value other than ``*'' in the resolution field is if the line is one at the end of the file which is intened to to be a best guess for printers which have not matched any of the lines above. These are some reasonable last resort lines:

*:*:*:300dpi:CanonCX *:*:*:600dpi:ljfour *:*:*:360dpi:NEChi

Selecting MetaFont Mode Names

The MetaFont mode names in the mfmodes.conf file that comes with PPR are taken from the modes.mf file maintained by Karl Berry. A recent version of his modes.mf file is distributed with the PPR source code, in the misc directory. His file defines a number of aliases for each mode. When adding entries to PPR's mfmodes.conf file you should try not to use two different names that both refer to the same mode in modes.mf because that would result in the generation of duplicate sets of identical pk font files. The mfmodes.conf file supplied with PPR always uses the first alias from Karl Berry's modes.mf file.


SEE ALSO

ppad(8), ``PPR, a PostScript Print Spooler'', ftp://ftp.tug.org/tex/modes.mf.


HISTORY

PPR was written at Trinity College during 1993--1997.


AUTHOR

David Chappell, Trinity College Computing Center, Hartford, Connecticut.