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
     b, to avoid
too-long names; and for the others, to avoid variant vs. design-size
ambiguities.
     g
     h
     5
     6
     7
     8
     9
     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 (see 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
     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
9xk
     z
     m
     v
     y
     7m (see texmital), 7v
(see texmext), and 7y (see texmsym).
     n
     r
     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
     LucidaSans (see 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
xee9eFontname 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
     obsolete [2=>7c] Fraktur encoding
     obsolete [3=>7f] Fraction
     obsolete [4 fax; now typeface lx, Lucida Fax]
     5 escape for (presently) phonetic encodings
     6 escape for 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      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                                    unslanted italic
     v MathExtension
     w Script Handwritten Swash Calligraphy Cursive Tango
     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
     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             see texmital
     7t                       TeX text encoding (as in Computer Modern Roman)
     7v TeXMathExtensionEncoding          see texmext
     7y TeXMathSymbolEncoding             see texmsym
     7z user
     82 GreekKeys
     83 Ibycus1
     84 Ibycus2
     8a StandardEncoding                  Adobe standard encoding, see 8a
     8c TeXTextCompanion                  LaTeX TS1
     8f TeXAfricanLatin                   LaTeX T4
     8i TS0                               Intersection of TS1/Adobe Standard
     8m Macintosh standard encoding
     8n LM1 Textures
     8r TeXBase1Encoding                  see 8r
     8t CorkEncoding                      see cork
     8u XT2Encoding                       cmtt + Latin 2, see xl2.enc
     8v TeXVietnamese                     to be defined
     8w Windows 3.1 ANSI encoding
     8x Expert                            expert encoding
     8y LY1                               TeX 'n ANSI
     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
     9z user
     -  songti                            for mnm