fontname: Variants
2.4 Variants
============
"Variants" include typeface variations (e.g., italic, sans serif), and
font encodings (e.g., Adobe standard, TeX text).
A fontname may require multiple variants. To resolve the worst
ambiguities, we specify that any encoding variant (`7', `8', or `9',
see below) come last and any other numeral variant come first (to avoid
confusion with a design size). We recommend but do not require that
the other variants be given in alphabetical order. (It's not required
because it's too painful to implement the sorting in TeX, and many
existing names already have non-alphabetized variants.)
The letterspacing possibilities introduced by `fontinst' and virtual
fonts have not yet become sufficiently widespread to make
standardization beneficial. Likewise for the many possible ways to
generate small caps fonts.
Notes on specific variants, both old and new:
`1'
`4'
`6'
`b'
These variants (`semisans', `bright', `semiserif', and `fax') were
used only for single typefaces, so to conserve variant
abbreviations, they now have typeface abbreviations instead.
Also, for `b', to avoid too-long names; and for the others, to
avoid variant vs. design-size ambiguities.
`g'
`h'
Since these variants were not actually used in any font names,
they are now obsolete and may be reassigned in the future.
`5'
`6'
`7'
`8'
`9'
These characters begin a two-character "encoding variant".
Generally, `7' is for 7-bit encodings, `8' is for 8-bit encodings,
and `9' is for expertised encodings with or without oldstyle
digits (see the `x' item below), but this is not an absolute rule.
Also, `5' is presently used for phonetic encodings and `6' for
Cyrillic encodings. The `9s' (`SuperFont') variant contain all of
Adobe, Latin 1, and Expert glyphs, perhaps with slightly different
metrics than the original fonts.
For a font to be named with a certain encoding variant, it's not
necessary that all the characters appear in precisely the same
positions as in the encoding definition. It's enough that the
usual TeX macros work. In practice, this means that it's ok for a
font to be labelled `7t' if the only difference from Computer
Modern is that the ligatures and the `lslash' and `Lslash'
characters are different, since it's impossible to access or
change the ligature table from TeX. Standard PostScript fonts
don't have an `lslash' character the way Computer Modern does, but
they do have the `Lslash' and `lslash' characters themselves, so
the usual TeX `\lslash' and `\Lslash' macros can be made to work
via ligatures. See the file `T1.etx' file in the `fontinst'
distribution for details.
If a name does not contain a specific encoding variant, its
encoding is unspecified. For example, some of the fonts
distributed with Dvips(k) have names like `ptmr' for
`Times-Roman'; they use the Dvips encoding (dvips), which
is close to (but not the same as) the TeX text encoding (as in
Computer Modern Roman). Similarly, the TFM files distributed with
Dvilj(k) for the builtin LaserJet 4 fonts have names like `cunm',
since these fonts, while compatible with TeX text, contain many
additional characters.
`9'
These items are needed only because `x' (and possibly `j')
followed by a two-character regular variant makes some names too
long. That is, `9t' is equivalent in meaning to `x7t', and `9d'
is equivalent to `jx7t'. (This may not be true for all `9X'
encodings, though.)
`k'
`z'
These variants (indicating Greek and Cyrillic fonts, respectively)
are obsolete; future fonts in different scripts should be assigned
an appropriate encoding abbreviation. These are not currently
standardized, due to ignorance of the appropriate encodings.
Please send suggestions for abbreviations to the address in
Introduction.
`m'
`v'
`y'
These math-related variants remain for the sake of
typeface-specific math encodings, e.g., Lucida. Fonts that use
the Computer Modern math encodings should use `7m' (
texmital), `7v' (texmext), and `7y' (texmsym).
`n'
This is used for several different (but very rare) variants: only
the Stone typeface has an "informal" variant, and only a few
Monotype fonts have a "schoolbook" variant, with different `a',
`g', and `y' shapes.
`r'
Included only if no other variants, including encodings, apply, and
either the width (Widths) is not `r' or a design size is
present. I.e., `r' is only used as a placeholder. When the normal
version of the typeface is sans serif (e.g., Helvetica), `r' should
be used when necessary, not `s'. Use `s' only when the typeface
family has both serif and sans serif variants.
`s'
`t'
Mittelbach in `TUGboat' 13(1) suggests that these variants (for
`sans' and `typewriter') should be identified as part of the
typeface name, because there are few typeface families with these
variants. I feel that since they are logically variants, it's
best to name them that way. But `LucidaSans' (Typefaces)
and a few others are exceptions, to avoid too-long names.
`x'
`8x'
`9?'
`8x' indicates a font in the `Expert' encoding itself. `x'
indicates an "expertised" font, i.e., a composite (virtual) font
that includes characters from an `8x' font. And in fact an `xEE'
sequence is replaced by `9E', to save characters.
Fontname 1 assignments are shown in brackets in the following table,
from the file `variant.map'. It is organized alphabetically by
abbreviation. Each line consists of an abbreviation and either any
parts of a PostScript `FontName' which use that abbreviation or the
PostScript `Encoding' name.
0 inferior
1 superior
2 proportional digits, not tabular
obsolete [3=>7f] Fraction
obsolete [4 fax; now typeface `lx', Lucida Fax]
5 escape for (presently) phonetic encodings
6 escape for (mostly) Cyrillic encodings [was `SemiSerif']
7 escape for (mostly) 7-bit encodings
8 escape for (mostly) 8-bit encodings
9 escape for (presently) expert encodings [was oldstyle digits]
a Alt Arrows Alternative [was alternate encoding]
obsolete [b bright; now typeface lh, Lucida Bright]
c SmallCaps
d Display Titling Caption Headline TallCaps SwashCaps LombardicCaps Festive
e Engraved Copperplate Elite
f Fraktur Gothic OldEnglish Handtooled (`gothic' can also be sans)
g SmallText lc only, or designed for small sizes [was grooved, as in the IBM logo]
h Shadow
i Italic Kursiv Ital text italic
j old-style digits [was invisible]
k Greek obsolete
l Outline OpenFace Blanks
m math italic
n Informal Fashion Schlbk for Stone
o Oblique Obl slanted
p Ornaments
obsolete [q=>8t Cork (TeX extended) encoding]
r roman or sans; often omitted, see text
s Gothic sans serif
t Monospace fixed-width typewriter
u underline or unslanted italic
v MathExtension
w Script Handwritten Swash Calligraphy Cursive Tango Ligature
x built with Adobe expert encoding [was expert-encoded]
y MathSymbol
z Cyrillic font-dependent Cyrillic
5a PhoneticAlternate
5i PhoneticIPA
5s sil-IPA
5t TeX-IPA Fukui Rei, LaTeX T3
5w TeXAfricanLatin wsuipa fonts, LaTeX OT3
5z user
6a T2A
6b Cyrillic part of ISO 8859-5, seven bits
6c T2C
6d Cyrillic CP866 encoding
6g LGR Greek font encoding
6i ISO 8859-5
6k Cyrillic KOI8-R encoding
6m Cyrillic Macintosh encoding
6s Storm extra encoding
6t T2B
6w Cyrillic CP1251 encoding
6x X2
6y LCY
6z user
7a A alternate characters only
7c Dfr Fraktur
7d OsF OSF oldstyle digit encoding
7f Fraction
7k OT2Cyrillic
7m TeXMathItalicEncoding texmital
7t TeX text encoding (as in Computer Modern Roman)
7v TeXMathExtensionEncoding texmext
7y TeXMathSymbolEncoding texmsym
7z user
82 GreekKeys
83 Ibycus1
84 Ibycus2
8a StandardEncoding Adobe standard encoding, 8a
8c TeXTextCompanion LaTeX TS1
8e CE Adobe CE
8f TeXAfricanLatin LaTeX T4
8g groff
8i TS0 Intersection of TS1/Adobe Standard
8m Macintosh standard encoding
8n LM1 Textures
8q encqxoosix QX, from GUST
8r TeXBase1Encoding (8r)
8t ECEncoding CorkEncoding (ec), aka tex256.enc
8u XT2Encoding cmtt + Latin 2, see `xl2.enc'
8v TeXVietnamese T5
8w Windows 3.1 ANSI encoding
8x Expert expert encoding
8y LY1 texnansi
8z XL2Encoding cmr + Latin 2, see `xl2.enc'
9c expert + Text companion
9d expert + oldstyle digits + Cork
9e expert + Cork
9i TS0X Intersection of TS1/Standard/Expert
9o expert + oldstyle digits + TeX text
9s SF SuperFont
9t expert + TeX text
9u Unicode-compatible
9x TeXnANSIEncodingX texnansx, texnansi without repeats
9z user
- songti for mnm