From ac7c62d7555a6cebca926dc51ebc39cb235982db Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 23 May 2009 00:14:50 +0000 Subject: use doc subdirs git-svn-id: svn://tug.org/texlive/trunk@13408 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/fontname/fontname.texi | 1349 -------------------------- 1 file changed, 1349 deletions(-) delete mode 100644 Master/texmf-dist/doc/fontname/fontname.texi (limited to 'Master/texmf-dist/doc/fontname/fontname.texi') diff --git a/Master/texmf-dist/doc/fontname/fontname.texi b/Master/texmf-dist/doc/fontname/fontname.texi deleted file mode 100644 index e9592dbcbff..00000000000 --- a/Master/texmf-dist/doc/fontname/fontname.texi +++ /dev/null @@ -1,1349 +0,0 @@ -\input texinfo -@c This file is in the public domain and may be used freely. -@c -@c @texinfofile{ -@c author = "Karl Berry", -@c date = "30oct08", -@c filename = "fontname.texi", -@c email = "tex-fonts@@math.utah.edu", -@c url = "http://tug.org/fontname/", -@c docstring = "A naming scheme for font files intended to be usable -@c with all systems on which TeX runs." -@c } -@setfilename fontname.info -@settitle Filenames for @TeX{} fonts - -@copying -This document is in the public domain and may be used freely. -@end copying - -@c Define a new index for filenames, and use the concept index for everything. -@defcodeindex fl -@syncodeindex fl cp -@syncodeindex fn cp - -@dircategory TeX -@direntry -* Naming TeX fonts: (fontname). Filenames for TeX fonts. -@end direntry - - -@titlepage -@title Fontname -@subtitle October 2008 -@subtitle Filenames for @TeX{} fonts -@author Karl Berry -@end titlepage - -@contents - -@ifnottex -@node Top -@top Filenames for @TeX{} fonts - -This is Fontname, a naming scheme for (the base part of) external @TeX{} -font filenames. Last update 30 October 2008. - -@menu -* Introduction:: Rationale and basic information about fonts. -* Filenames for fonts:: The construction of font names. -* Long names:: A specification for long filenames. -* Font name lists:: Real fontnames for many existing fonts. -* Encodings:: Specifications for various encodings. -* Font legalities:: Legal issues vary from country to country. -* General index:: Index. - -@detailmenu - --- The Detailed Node Listing --- - -Introduction - -* History:: -* References:: - -Filenames for fonts - -* Suppliers:: -* Typefaces:: -* Weights:: -* Variants:: -* Widths:: - -Long names - -* Name mapping file:: Aliases for fonts. -* Long naming scheme:: A way to use more than 8 alphanumerics. - -Font name lists - -* Standard PostScript fonts:: The standard 35 PostScript fonts. -* Adobe fonts:: -* Apple fonts:: -* Bitstream fonts:: -* DTC fonts:: -* ITC fonts:: -* Linotype fonts:: -* Monotype fonts:: -* URW fonts:: - -Encodings - -* 8a:: Adobe standard. -* 8r:: TeX base. -* dvips:: Dvips. -* ec:: EC (aka Cork, TeX Latin 1, tex256). -* qx:: QX, from GUST. -* t5:: Vietnamese, from vntex. -* texmext:: TeX math extension. -* texmsym:: TeX math symbol. -* texmital:: TeX math italic. -* texnansi:: From Y&Y. -* texnansx:: From Y&Y. -* xl2:: OT1 + ISO Latin 2 (extended). -* xt2:: Typewriter version of xl2. - -@end detailmenu -@end menu - -@end ifnottex - - -@node Introduction -@chapter Introduction - -@cindex introduction - -This is Fontname, a naming scheme for (the base part of) external @TeX{} -font filenames. This makes at most eight-character names from (almost) -arbitrarily complex font names, thus helping portability of @TeX{} -documents. We point out some shortcomings of the scheme, and ways of -dealing with them. - -@cindex bugs, reporting -@cindex reporting bugs -@flindex tex-fonts@@tug.org -Please send additions, corrections, or other comments to -@email{tex-fonts@@tug.org}. Email -@email{tex-fonts-request@@tug.org} to join the list. - -@cindex distribution -@cindex encoding files -@cindex mapping files -@cindex utilities -Besides this document, the Fontname distribution includes various -encoding files, mapping files, and utilities. See the file -@file{README} for details. You can retrieve the most up-to-date -version of these lists from @uref{http://tug.org/fontname}. It is -also mirrored on all CTAN hosts in the directory -@file{tex-archive/doc/fontname}. For a list of CTAN mirrors, see -@uref{http://www.ctan.org/tex-archive/CTAN.sites}. - -This document is in the public domain and may be used freely. - -@menu -* History:: -* References:: -@end menu - - -@node History -@section History - -@cindex history - -@cindex Mittelbach, Frank -@cindex Schoepf, Rainer -The original inspiration for Fontname was Frank Mittelbach and Rainer -Schoepf's article in @cite{TUGboat} 11(2) (June 1990), which led to my -article in @cite{TUGboat} 11(4) (November 1990), pages 512--519. -Mittelbach wrote another article criticizing the scheme below in -@cite{TUGboat} 13(1) (April 1992), pages 51--53; most of his points are -well-taken, but I saw no alternative then, and see no alternative now. -Others of his points are addressed in the appropriate sections below. - -@cindex Fontname version 2 -In August 1995, Fontname version 2 was released, concomitantly with a new -release of the PostScript fonts for use with La@TeX{} and Dvips. After -several years of experience, several modifications of the original -distribution seemed desirable: more precise specification of encodings -(@pxref{Variants}); machine-readable mapping files (the @file{*.map} -files in the distribution) and standardizing directory names as well as -font filenames (included in @file{supplier.map} and -@file{typeface.map}). - -In Fontname version 1, some encoding variant characters (@samp{0}, -@samp{2}, etc.) have been reassigned to a @samp{7} or @samp{8} sequence -(@pxref{Variants}). Although this is an incompatible change, the -advantages of (1) consistency in naming encoding variants, and (2) -having some free variants makes it worthwhile. Also, not so -coincidentally, new metrics for PostScript fonts in the Cork encoding -were issued---same encoding, different metrics. So a new name served a -practical purpose as well. - -@cindex contributors -@cindex Beebe, Nelson -@cindex Beeton, Barbara -@cindex Bernstein, Rocky -@cindex Bouche, Thierry -@cindex Cugley, Damian -@cindex Horn, Berthol -@cindex Jeffrey, Alan -@cindex Lang, Russell -@cindex MacKay, Pierre -@cindex Rahtz, Sebastian -@cindex Rivlin, Jean -@cindex Rokicki, Tom -Many people have contributed to this work. In particular, I gratefully -acknowledge Nelson Beebe, Barbara Beeton, Rocky Bernstein, Thierry Bouche, -Damian Cugley, Berthold K.P. Horn, Alan Jeffrey, Russell Lang, Pierre -MacKay, Sebastian Rahtz, Jean Rivlin, and Tom Rokicki. - - -@node References -@section References - -@cindex references -@cindex related files - -Related files and distributions: - -@itemize @bullet -@item -@cindex @TeX{} Directory Structure standard -@cindex TDS standard -The @TeX{} Directory Structure (TDS) standard, available at -(@uref{http://tug.org/tds} and @file{@var{CTAN:}/tds}) specifies a -directory tree for all @TeX{} library files. The directory names -given in @ref{Suppliers} and @ref{Typefaces} are intended to mesh with -that standard. - -@item -@flindex modes.mf -The @file{modes.mf} file (@uref{ftp://tug.org/tex/modes.mf}) -contains recommended mode names to use as directory names. - -@item -@cindex Fontinst distribution -The Fontinst distribution (@url{http://tug.org/applications/fontinst} -supports quite general creation of virtual fonts, named according to the -scheme given here. - -@item -@cindex Dvips translator -The Dvips translator (@url{http://tug.org/dvips}) supports resident -and downloadable PostScript fonts. Dvips was the first place where -Fontname became widely known. Dvips also includes Afm2tfm, another -program that can create virtual fonts. - -@item -@cindex Dviljk translator -The Dviljk processor (included in @TeX{} Live) contains @TeX{} support -for the fonts built into the LaserJet@tie{}4. - -@item -@cindex terminology -@cindex Southall, Richard -`Designing New Typefaces with Metafont', by Richard Southall, -Stanford Computer Science Department Technical Report STAN-CS-85-1074, -September 1985, for a comprehensive terminology of font design. - -@end itemize - - -@node Filenames for fonts -@chapter Filenames for fonts - -In this scheme, names may consist of only the letters (monocase a-z), -numerals (0-9), and underscore. Having two names which differ only in -case is undesirable, since it results in clashes on common Windows -filesystems. - -@cindex filenames, basics -Here is the basic scheme (the spaces here are merely for readability): - -@example - @var{S} @var{TT} @var{W} [@var{V@dots{}}] [@var{N}] [@var{E}] [@var{DD}] -@end example - -@noindent where - -@table @var -@item S -represents the supplier of the font. - -@item TT -represents the typeface name. - -@item W -represents the weight. - -@item V@dots{} -represents the variant(s), and is omitted if both it and the width are -normal. Many fonts have more than one variant. - -@item N -represents the encoding, and is omitted if the encoding is nonstandard. -Encodings are subsumed in the section on variants (@pxref{Variants}). - -@item E -represents the width (``expansion''), and is omitted if -it is normal. - -@item DD -@cindex design size specification -@cindex hexadecimal design size -@cindex font scaling -@cindex Mittelbach, Frank -represents the design size (in decimal), and is omitted if the font is -linearly scaled. Mittelbach in @cite{TUGboat} 13(1) proposes using -hexadecimal or base-36 notation. In my opinion, the increased range -does not make up for the unreadability of the common sizes (e.g., -10@dmn{pt} fonts would have a suffix @samp{a} (in hex), or @samp{j} -(in base 36)). - -@end table - -We used to try to limit font names to eight characters. This was -never completely possible, and since DOS filesystems have become rare, -it's no longer an issue. - -The weight, variants, and width are probably all best taken from the -original name of the font, instead of trying to relate them to some -external standard. - -@menu -* Suppliers:: -* Typefaces:: -* Weights:: -* Variants:: -* Widths:: -@end menu - - -@node Suppliers -@section Suppliers - -@cindex suppliers -@cindex foundries -@cindex type foundries - -The @dfn{supplier} is the source of a font, typically a (digital) type -foundry. - -@cindex Avant Garde -@cindex Lubalin, Herb -You should use the supplier letter which matches the supplier you -obtained the font from, not the original source; for example, Avant -Garde was designed by Herb Lubalin for ITC, but Adobe also sells it. -The name of the font that you get from Adobe should start with @samp{p}. -This is because font resellers typically make modifications to the -original design. - -Notes on specific suppliers: - -@table @samp -@item f -@cindex individual font designers -@cindex small foundries -@cindex attribution of fonts, missing -@cindex unattributed fonts -For fonts that are distributed without any specific attribution to the -creator, by individuals, or by small foundries. (Unfortunately, we -don't have enough characters to assign one to every font -supplier in the world.) - -@item r -@cindex raw fonts -obsolete; specifies raw fonts, in the old distribution of Dvips. New -fonts should never use @samp{r}. (The right thing to do is specify the -correct encoding, variant, or whatever the font's characteristics -actually are.) - -@item z -@cindex bizarre font names -@cindex nonstandard names, escape for -@cindex escape for nonstandard names -for fonts that just don't fit well into the naming scheme. The @samp{z} -should be followed by the real supplier letter. -@end table - -@flindex supplier.map -Here is the table from the file @file{supplier.map}. It is organized -alphabetically by abbreviation. Each line consists of an abbreviation, -directory name, and comment. - -@example -@include supplier.map -@end example - - -@node Typefaces -@section Typefaces - -@cindex typefaces - -For our purposes, a @dfn{typeface} is a collection of related fonts. - -We sometimes use the same typeface abbreviation for fonts with different -supplier names, where we know (usually by inspection) that the fonts -truly are the same. This helps conserve abbreviations. - -Notes on specific typefaces: - -@table @samp -@item ad -@itemx gm -@cindex Garamond, versions of -To explain a common confusion: @samp{ad} is Adobe Garamond (with a -@samp{FontName} of @samp{AGaramond}). This is quite different from the -@samp{Garamond} typeface distributed by Adobe, which is actually ITC -Garamond. (Garamond No.@: 3 (@samp{f3}), Simoncini Garamond -(@samp{ig}), and Stempel Garamond (@samp{eg}) are still other -variations on the Garamond theme.) - -@item lh -@itemx ls -@itemx lx -@itemx r1 -These abbreviations for Lucida typeface subfamilies, et al., solve a -problem with names getting too long, or help conserve variant -abbreviations. @xref{Variants}. Ideally, they would not exist. - -@item ns -@itemx nt -@itemx tm -Suppliers offer as many variations on the Times New Roman design as they -do Garamond. Adobe has @samp{Times}, @samp{TimesNewRoman}, and -@samp{TimesNewRomanPS}. Although this last has been used by other -foundries (e.g., Monotype) for a Times variation exactly compatible with -Adobe's @samp{Times}, Adobe itself also offers it, so we must have -abbreviations for all three. - -@item pi -@cindex pi fonts -For pi fonts. Since names of pi fonts are rather arbitrary, it is -not useful to try to assign typeface abbreviations to all of -them. Instead, we use the supplier letter, @samp{pi}, an -arbitarily-assigned three-digit number, a weight and (if necessary) a -variant. For example, @samp{mpi001r}. Pi font @samp{001} for one -supplier has nothing to do with pi font @samp{001} for another. -@end table - -@flindex typeface.map -@findex FontName -Here is the table, from the file @file{typeface.map}. It is organized -alphabetically by abbreviation. Each line consists of an abbreviation -and directory name, possibly followed by PostScript @samp{FontName}s -and/or a comment in roman. The @samp{FontName} may be preceded by a -letter @var{s} and a @samp{:}, as in @samp{b:Dutch}. In that case, the -@var{s} is a supplier abbreviation, and we've used that abbreviation for -the given @samp{FontName} from that supplier. - -@verbatiminclude typeface.map - -@node Weights -@section Weights - -@cindex weight - -The @dfn{weight} of a font specifies its boldness. Arranged from -lightest to heaviest (more or less): - -@display -hairline, extra light, light -book, regular, medium -demibold, semibold, bold, extra bold, heavy -black, ultra, poster -@end display - -@flindex weight.map -Here is the table, from the file @file{weight.map}. It is organized -alphabetically by abbreviation. Each line consists of an abbreviation -and any parts of a PostScript @samp{FontName} which use that -abbreviation. - -@example -@include weight.map -@end example - - -@node Variants -@section Variants - -@cindex variants - -@dfn{Variants} include typeface variations (e.g., italic, sans serif), -and font encodings (e.g., Adobe standard, @TeX{} text). - -@cindex multiple variants -A fontname may require multiple variants. To resolve the worst -ambiguities, we specify that any encoding variant (@samp{7}, @samp{8}, -or @samp{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.) - -@cindex letterspacing -@cindex small caps fonts -The letterspacing possibilities introduced by @code{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: - -@table @samp -@item 1 -@itemx 4 -@itemx 6 -@itemx b -@cindex semisans variant -@cindex semiserif variant -@cindex fax variant -@cindex bright variant -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 @samp{b}, to avoid -too-long names; and for the others, to avoid variant vs.@: design-size -ambiguities. - -@item g -@itemx h -Since these variants were not actually used in any font names, they are -now obsolete and may be reassigned in the future. - -@item 5 -@itemx 6 -@itemx 7 -@itemx 8 -@itemx 9 -@cindex phonetic encodings -@cindex Cyrillic encodings -@cindex 7-bit encodings -@cindex 8-bit encodings -@cindex expertised encodings -@findex SuperFont -@findex 9s @r{variant} -These characters begin a two-character @dfn{encoding variant}. -Generally, @samp{7} is for 7-bit encodings, @samp{8} is for 8-bit -encodings, and @samp{9} is for expertised encodings with or without -oldstyle digits (see the @samp{x} item below), but this is not an -absolute rule. Also, @samp{5} is presently used for phonetic encodings -and @samp{6} for Cyrillic encodings. The @samp{9s} (@samp{SuperFont}) -variant contain all of Adobe, Latin 1, and Expert glyphs, perhaps with -slightly different metrics than the original fonts. - -@cindex ligatures and encodings -@findex Lslash -@findex lslash -@flindex T1.etx -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 -@samp{7t} if the only difference from Computer Modern is that the -ligatures and the @samp{lslash} and @samp{Lslash} characters are -different, since it's impossible to access or change the ligature table -from @TeX{}. Standard PostScript fonts don't have an @samp{lslash} -character the way Computer Modern does, but they do have the -@samp{Lslash} and @samp{lslash} characters themselves, so the usual -@TeX{} @code{\lslash} and @code{\Lslash} macros can be made to work via -ligatures. See the file @file{T1.etx} file in the @code{fontinst} -distribution for details. - -@cindex encodings, unspecified -@cindex Afm2tfm encoding -@cindex LaserJet 4 fonts -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 @samp{ptmr} for @samp{Times-Roman}; they use the Dvips -encoding (@pxref{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 @samp{cunm}, since these fonts, while compatible with -@TeX{} text, contain many additional characters. - -@item 9 -These items are needed only because @samp{x} (and possibly @samp{j}) -followed by a two-character regular variant makes some names too long. -That is, @samp{9t} is equivalent in meaning to @samp{x7t}, and @samp{9d} -is equivalent to @samp{jx7t}. (This may not be true for all -@samp{9@var{x}} encodings, though.) - -@item k -@itemx z -@cindex scripts -@cindex Greek fonts -@cindex Cyrillic fonts -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 @ref{Introduction}. - -@item m -@itemx v -@itemx y -@cindex math variants -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 @samp{7m} (@pxref{texmital}), @samp{7v} -(@pxref{texmext}), and @samp{7y} (@pxref{texmsym}). - -@item n -@cindex informal variant -@cindex schoolbook variant -@cindex Stone Informal -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. - -@item r -Included only if no other variants, including encodings, apply, and -either the width (@pxref{Widths}) is not @samp{r} or a design size is -present. I.e., @samp{r} is only used as a placeholder. When the normal -version of the typeface is sans serif (e.g., Helvetica), @samp{r} should -be used when necessary, not @samp{s}. Use @samp{s} only when the -typeface family has both serif and sans serif variants. - -@item s -@itemx t -@cindex typewriter variant -@cindex sans variant -@cindex Mittelbach, Frank -Mittelbach in @cite{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 @samp{LucidaSans} (@pxref{Typefaces}) and a few others are -exceptions, to avoid too-long names. - -@item x -@itemx 8x -@itemx 9? -@cindex expert encoding -@cindex expertised font -@samp{8x} indicates a font in the @samp{Expert} encoding itself. -@samp{x} indicates an @dfn{expertised} font, i.e., a composite (virtual) -font that includes characters from an @samp{8x} font. And in fact an -@samp{x@var{ee}} sequence is replaced by @samp{9@var{e}}, to save -characters. -@end table - -@flindex variant.map -Fontname 1 assignments are shown in brackets in the following table, -from the file @file{variant.map}. It is organized alphabetically by -abbreviation. Each line consists of an abbreviation and either any -parts of a PostScript @samp{FontName} which use that abbreviation or the -PostScript @samp{Encoding} name. - -@example -@include variant.map -@end example - - -@node Widths -@section Widths - -@cindex widths -@cindex compression -@cindex expansion - -The @dfn{width} of a font specifies the compression or expansion of the -font. Arranged from narrowest to widest (more or less): - -@display -ultra compressed, extra condensed, compressed, condensed, narrow -regular -semiextended, extended, expanded, wide -@end display - -@cindex automatic expansion -@cindex character scaling, automatic -Expansion or compression of fonts is sometimes done automatically (as by -the PostScript @code{scale} operator), and sometimes done by humans. In -the latter case, the human will also presumably choose a font name which -includes `Extended' or `Expanded' or `Condensed' or `Narrow' or whatever -according to their own preferences; the abbreviation can follow along. -When creating a new synthetically expanded or compressed font for use -with @TeX{}, e.g., with Afm2tfm or @code{fontinst}, use @samp{n} and -@samp{e}. - -@flindex width.map -Here is the table, from the file @file{width.map}. It is organized -alphabetically by abbreviation. Each line consists of an abbreviation -and any parts of a PostScript @samp{FontName} which use that -abbreviation. - -@example -@include width.map -@end example - - -@node Long names -@chapter Long names - -@cindex long names - -Eight characters is not enough to unambiguously represent all fonts. To -do that, we have to allow ourselves arbitrarily long names. Although we -certainly cannot use such names for the files themselves, we could still -use them in @TeX{} documents given a simple mapping file, as discussed -below. - -@menu -* Name mapping file:: Aliases for fonts. -* Long naming scheme:: A way to use more than 8 alphanumerics. -@end menu - - -@node Name mapping file -@section A fontname mapping file - -@cindex fontname mapping file -@cindex mapping file - -At the moment, most implementations of @TeX{} look up a TFM file (as -part of the @code{\font} command), by searching for a file with the name -given by the user (possibly in any of series of directories). But if we -also looked TFM names up in @emph{another} file (or set of files), which -specifies the actual filename, the fontname given in the @TeX{} source -file could be almost anything at all, of any length. - -@flindex texfonts.map -In version 5.851d of Web2c, I implemented this mapping file. Each file -@file{texfonts.map} in a search path is read for abbreviations. The file -has a straightforward format: each line specifies the filename and the -@TeX{} name for one font, separated by whitespace. Extra information on -the line is ignored; then more information could be specified for the -benefit of DVI-reading programs in the same file. Comments start with -@code{%} and continue to the end of the line. - -Besides allowing long names, this sort of mapping file has other -benefits. @TeX{} source or DVI files can be more easily transported, -because the font names in a particular file can be made work on every -system. Also, when combined with a consistent naming scheme, macros -could be written to access any of a number of fonts. Right now, each -font family has to have specialized macros written to deal with it. - -@cindex Knuth, Donald E. -Incidentally, Professor Knuth has approved this as a legitimate -``system-dependent'' extension; a @TeX{} with such a feature can still -be called ``@TeX{}''. - - -@node Long naming scheme -@section A naming scheme for long names - -@cindex long naming scheme - -@cindex X Window System font names -Once we allow ourselves long names, we can construct a naming scheme -to handle arbitrary fonts without much difficulty. Here is one -proposal, based on the X Window System font naming conventions. - -@example -@var{supplier}-@var{family}-@var{weight}-@var{variants}-@var{width}-@var{encoding}--@var{size} -@end example - -@var{supplier} is the usual @code{Adobe}, @code{Autologic}, etc., as -well as @code{unknown} or @code{bizarre}---this last meaning the rest of -the name is nonstandard. If the @var{supplier} is missing, i.e., the -name starts with a @code{-}, ``public domain'' is assumed. For fonts -made by individuals, the initials of the designer would probably make a -good @var{supplier}. - -@var{family} is @code{ComputerModern} or @code{Times} or whatever. - -Everything else is optional. The @code{--} before the @var{size} lets -one specify a name with, say, a weight and variants, but then skip the -@var{width} and @var{encoding}, but still be able to -give a size. - -@var{weight} and @var{width} are as described earlier. - -If there is more than one variant, they are separated with some -character other than @samp{-}, say @samp{=}: -@example -B+H-Lucida-Bold-Sans=Typewriter--10 -@end example - -@findex font_coding_scheme -@var{encoding} is what Metafont calls the -@code{font_coding_scheme}---the layout of the characters in the font. -For example, @samp{Cork} or @samp{ISOLatin1} or @samp{AdobeAlternate}. - -@cindex category codes -Names are case-sensitive, for consistency with the rest of @TeX{} and -with PostScript, etc. Spaces cannot be used in the name, to make it -easier for @TeX{} to parse. Likewise, characters with default category -codes other than 11 (letter) or 12 (other) should not be used. - -Another possibility is to forget all the above, and simply use the -vendor's name (perhaps prefixed by the vendor): -@samp{Times-Roman}. - - -@node Font name lists -@appendix Font name lists - -These sections contain a list of fonts from various suppliers together -with the corresponding names. - -@menu -* Standard PostScript fonts:: The standard 35 PostScript fonts. -* Adobe fonts:: -* Apple fonts:: -* Bitstream fonts:: -* DTC fonts:: -* ITC fonts:: -* Linotype fonts:: -* Monotype fonts:: -* URW fonts:: -@end menu - - -@node Standard PostScript fonts -@section Standard PostScript fonts - -@cindex 35 standard PostScript fonts -@cindex standard PostScript fonts -@cindex PostScript fonts, standard - -Abbreviated names for the 35 standard PostScript fonts. An encoding -variant, such as @samp{8a} for the Adobe @samp{StandardEncoding}, is -omitted. - -@table @file -@item pagk - @samp{AvantGarde-Book} -@item pagko - @samp{AvantGarde-BookOblique} -@item pagd - @samp{AvantGarde-Demi} -@item pagdo - @samp{AvantGarde-DemiOblique} -@item pbkd - @samp{Bookman-Demi} -@item pbkdi - @samp{Bookman-DemiItalic} -@item pbkl - @samp{Bookman-Light} -@item pbkli - @samp{Bookman-LightItalic} -@item pcrb - @samp{Courier-Bold} -@item pcrbo - @samp{Courier-BoldOblique} -@item pcrr - @samp{Courier} -@item pcrro - @samp{Courier-Oblique} -@item phvb - @samp{Helvetica-Bold} -@item phvbo - @samp{Helvetica-BoldOblique} -@item phvbrn - @samp{Helvetica-NarrowBold} -@item phvbon - @samp{Helvetica-NarrowBoldOblique} -@item phvr - @samp{Helvetica} -@item phvro - @samp{Helvetica-Oblique} -@item phvrrn - @samp{Helvetica-Narrow} -@item phvron - @samp{Helvetica-NarrowOblique} -@item pncb - @samp{NewCenturySchlbk-Bold} -@item pncbi - @samp{NewCenturySchlbk-BoldItalic} -@item pncri - @samp{NewCenturySchlbk-Italic} -@item pncr - @samp{NewCenturySchlbk-Roman} -@item pplb - @samp{Palatino-Bold} -@item pplbi - @samp{Palatino-BoldItalic} -@item pplri - @samp{Palatino-Italic} -@item pplr - @samp{Palatino-Roman} -@item psyr - @samp{Symbol} -@item ptmb - @samp{Times-Bold} -@item ptmbi - @samp{Times-BoldItalic} -@item ptmri - @samp{Times-Italic} -@item ptmr - @samp{Times-Roman} -@item pzcmi - @samp{ZapfChancery-MediumItalic} -@item pzdr - @samp{ZapfDingbats} -@end table - - -@node Adobe fonts -@section Adobe fonts - -@flindex adobe.map -The @file{adobe.map} file has abbreviations for Adobe fonts. - -@example -@include adobe.map -@end example - - -@node Apple fonts -@section Apple fonts - -@flindex apple.map -The @file{apple.map} file has abbreviations for Apple fonts. - -@example -@include apple.map -@end example - - -@node Bitstream fonts -@section Bitstream fonts - -@flindex bitstrea.map -The @file{bitstrea.map} file has abbreviations for Bitstream fonts. - -@example -@include bitstrea.map -@end example - - -@node DTC fonts -@section DTC fonts - -@flindex dtc.map -The @file{dtc.map} file has abbreviations for DTC (Digital Typeface -Corporation) fonts. - -@example -@include dtc.map -@end example - - -@node ITC fonts -@section ITC fonts - -@flindex itc.map -The @file{itc.map} file has abbreviations for ITC (International -Typeface Corporation) fonts. - -@example -@include itc.map -@end example - - -@node Linotype fonts -@section Linotype fonts - -@flindex linotype.map -The @file{linotype.map} file has abbreviations for Linotype fonts. - -@example -@include linotype.map -@end example - - -@node Monotype fonts -@section Monotype fonts - -@flindex monotype.map -The @file{monotype.map} file has abbreviations for Monotype fonts. - -@example -@iftex -@ifclear html -@global@hfuzz@maxdimen -@end ifclear -@end iftex -@include monotype.map -@iftex -@ifclear html -@global@hfuzz1pt -@end ifclear -@end iftex -@end example - - -@node URW fonts -@section URW fonts - -@cindex URW fonts -@cindex Ertner, Vincent - -Information graciously supplied through URW, via Vincent Ertner: Each -URW font has an assigned font number. The last character describes -the size or purpose of the font, as the design of the font is -optimized accordingly: - -@table @code -@item X000000E -Extreme: 8@dmn{pt} and smaller - -@item X000000T -Text: between 8 and 18@dmn{pt} - -@item X000000D -Display: 18@dmn{pt} and larger - -@item X000000P -Poster: 48@dmn{pt} and larger - -@item X000000M -Monospaced / Typewriter - -@item X000000L -LaserWriter / PostScript / Adobe compatible - -@item X000000I -Intellifont PCL (5) compatible - -@end table -@noindent An @samp{F} identifier is not known. - -@flindex urw.map -The @file{urw.map} file has abbreviations for URW fonts. - -@example -@include urw.map -@end example - - -@node Encodings -@appendix Encodings - -@cindex PostScript encoding vectors -@cindex encoding vectors - -The following sections define various encodings as PostScript encoding -vectors. These files can be installed in the Dvips header directory and -then used in @file{psfonts.map} to change font encodings of downloadable -or builtin fonts (@pxref{psfonts.map,,, dvips, Dvips}). - -You can also specify these @file{.enc} files to Afm2tfm when building a -font (@pxref{Changing font encodings,,, dvips, Dvips}). - -For a discussion of @TeX{} font encodings in general, and defining new -ones for use with @command{fontinst} in particular, see -@uref{http://www.ctan.org/tex-archive/fonts/utilities/fontinst/doc/encspecs}. - -A tutorial on character code issues in general is available at -@url{http://www.cs.tut.fi/~jkorpela/chars.html}. - -Naming specific characters is a tangled and difficult area. Here are -some links to character tables for Unicode, Adobe, and WGL4, for your -researching pleasure (thanks to Boguslaw Jackowski for the list): - -@itemize @bullet -@item @uref{http://www.unicode.org/Public/UNIDATA/UnicodeData.txt} -@item @uref{http://www.unicode.org/Public/UNIDATA/NamesList.txt} -@item @uref{http://partners.adobe.com/asn/tech/type/corporateuse-old.txt} -@item @uref{http://partners.adobe.com/asn/tech/type/aglfn13.txt} -@item @uref{http://partners.adobe.com/asn/tech/type/unicodegn.jsp} -@item @uref{http://www.microsoft.com/OpenType/otspec/WGL4.htm} -@end itemize - -@menu -* 6w:: CP-1251 (Cyrillic). -* 8a:: Adobe standard. -* 8r:: TeX base. -* dvips:: Dvips. -* ec:: EC (aka COrk, TeX Latin 1, tex256). -* groff:: 8g. -* t5:: Vietnamese, from vntex. -* qx:: QX, from GUST. -* texmext:: TeX math extension. -* texmsym:: TeX math symbol. -* texmital:: TeX math italic. -* texnansi:: From Y&Y. -* texnansx:: From Y&Y. -* xl2:: OT1 + ISO Latin 2 (extended). -* xt2:: Typewriter version of xl2. -@end menu - - -@node 6w -@section @samp{6w.enc}: Cyrillic CP-1251 - -@flindex 62.enc -@cindex Cyrillic encoding -@cindex CP-1251 encoding -@cindex encodings, Cyrillic CP-1251 - -@verbatiminclude 8a.enc - - -@node 8a -@section @samp{8a.enc}: Adobe standard encoding - -@flindex 8a.enc -@cindex Adobe standard encoding -@cindex encodings, Adobe standard - -@verbatiminclude 8a.enc - - -@node 8r -@section @samp{8r.enc}: @TeX{} base encoding - -@flindex 8r.enc -@cindex @TeX{} base encoding -@cindex base encoding, for @TeX{} -@cindex encodings, @TeX{} base -@cindex Windows ANSI -@cindex Lucida Bright - -@verbatiminclude 8r.enc - -@node dvips -@section @samp{dvips.enc}: Dvips encoding - -@flindex dvips.enc -@cindex Dvips encoding -@cindex encoding, Dvips - -@verbatiminclude dvips.enc - - -@node ec -@section @samp{ec.enc}: Cork encoding - -@flindex ec.enc -@cindex Cork encoding -@cindex EC encoding -@cindex @TeX{} Latin 1 encoding -@cindex encodings, Cork -@cindex encodings, EC -@cindex encodings, @TeX{} Latin 1 - -@verbatiminclude ec.enc - - -@node groff -@section @samp{groff.enc}: groff encoding - -@flindex groff.enc -@cindex Groff encoding -@cindex encoding, Groff - -@verbatiminclude groff.enc - - -@node t5 -@section @samp{t5.enc}: T5 encoding - -@flindex t5.enc -@cindex T5 encoding -@cindex Vietnamese encoding -@cindex encoding, T5 - -@verbatiminclude t5.enc - - -@node qx -@section @samp{qx.enc} - -@flindex qx.enc -@cindex encodings, qx -@cindex qx encoding - -From GUST. - -@verbatiminclude qx.txt -@verbatiminclude qx.enc - - -@node texmext -@section @samp{texmext.enc}: @TeX{} math extension encoding - -@flindex texmext.enc -@cindex @TeX{} math extension encoding -@cindex math extension, @TeX{} encoding -@cindex extension, @TeX{} math encoding -@cindex encodings, @TeX{} math symbol - -@verbatiminclude texmext.enc - - -@node texmsym -@section @samp{texmsym.enc}: @TeX{} math symbol encoding - -@flindex texmsym.enc -@cindex @TeX{} math symbol encoding -@cindex math symbol, @TeX{} encoding -@cindex symbol, @TeX{} math encoding -@cindex encodings, @TeX{} math symbol - -@verbatiminclude texmsym.enc - - -@node texmital -@section @samp{texmital.enc}: @TeX{} math italic encoding - -@flindex texmital.enc -@cindex @TeX{} math italic encoding -@cindex math italic, @TeX{} encoding -@cindex italic, @TeX{} math encoding -@cindex encodings, @TeX{} math italic - -@verbatiminclude texmital.enc - - -@node texnansi -@section @samp{texnansi.enc} - -@flindex texnansi.enc -@cindex encodings, texnansi -@cindex texnansi encoding - -From Y&Y. - -@verbatiminclude texnansi.enc - - -@node texnansx -@section @samp{texnansx.enc} - -@flindex texnansx.enc -@cindex encodings, texnansx -@cindex texnansx encoding - -From Y&Y. @samp{texnansi} without repeats. - -@verbatiminclude texnansx.enc - - -@node xl2 -@section @samp{xl2.enc}: OT1 + ISO Latin 2 extended - -@flindex xl2.enc -@cindex ISO Latin 2 extended, @TeX{} encoding - -@verbatiminclude xl2.enc - - -@node xt2 -@section @samp{xt2.enc}: typewriter OT1 + ISO Latin 2 extended - -@flindex xt2.enc -@cindex ISO Latin 2 extended and typewriter, @TeX{} encoding - -@verbatiminclude xt2.enc - - -@node Font legalities -@appendix Font legalities - -@cindex legalisms -@cindex typeface design protection -@cindex copyright on fonts -@cindex font copyrighting -@cindex patenting of fonts - -@cindex Bigelow, Charles -@cindex Holmes, Kris -This section owes a great deal to Charles Bigelow (co-designer with Kris -Holmes of the Lucida typeface family, among others), who has generously -answered our many queries about fonts and the law around the world with -remarkable patience and understanding. (But he is naturally not -responsible for any errors here, much less our opinions.) - -Fonts have always been treated rather strangely under the law, as befits -their rather strange nature: letterforms are indivisibly both -@emph{useful} and @emph{artistic}. In most countries---in all countries -until recently---utility has taken precedence; i.e., it has been legal -to copy fonts without permission or fee. - -In any case, to the best of my knowledge, the situation in those -countries which have adopted any sort of typeface protection is as -follows. This was originally written in the early 1990's; these days, -the situation is probably different, due to widespread adoption of -software patents, among other things, but I lack specific information -to include. - -@table @asis - -@cindex United States, font design protection law -@cindex Lucida, protection of -@cindex Stone, protection of -@item United States -Typeface designs can be patented, but not copyrighted. Only a few -designs have been patented. (Lucida and Stone are the only ones I know -of. I don't know what the grounds were for patenting Stone, but Lucida -had some novel features in its design which make it reasonable to -patent, given the acceptance of the patent system in the first place.) - -Particular programs which instantiate a font can be copyrighted just as -any other computer program can. This is arguably wrong, since font -programs are nothing but a description of the shapes, possibly with some -simple hints, and there's only one basic way to describe the shapes in -any given language. Thus, the creativity lies in making the shape -right, not in making the computer program right, so it would seem that -to be consistent, the copyright laws should protect the design, not the -program---the opposite of the current situation. - -@cindex Germany, font design protection law -@cindex Renner, Paul -@cindex Futura -@item Germany -Typeface designs have been copyrightable as original works of art since -1981. As a result, many (perhaps most) designs have been copyrighted -there. The law is not retroactive, but German courts have upheld the -intellectual property rights of designers of earlier fonts as well: In -one case the heirs of Paul Renner (designer of Futura) won a suit against -the Bauer foundry for arbitrarily discontinuing a portion of their -royalties. - -@cindex England, font design protection law -@cindex Times Roman, protection of -@cindex Morison, Stanley -@item England -A copyright law passed in 1989 covers typeface designs first published -in England (or published in Britain within 30 days of its publication -elsewhere), and it @emph{is} retroactive. It's unclear how far back -the law extends, but Times Roman, designed in the late 1920's and -1930's by Stanley Morison is probably covered. This does not mean GNU -(for example) cannot have a Times Roman; it just means we cannot start -with an English version, as the law does not forbid importing foreign -versions of English typefaces. - -@cindex France, font design protection law -@cindex romain du roi -@cindex Grandjean, Philippe -@item France -The Romain du Roi typeface designed by Philippe Grandjean in 1702 for -the French royal family is protected, and perhaps other such ``royal'' -designs. There is no protection for designs in general. - -@end table - -@cindex Vienna treaty -In 1973 the international Vienna treaty on typeface design protection -was proposed. France ratified it in 1974 or 1975, and Germany in 1981. -The English law might constitute ratification, but this has not been -settled. In any case, since at least four countries have to ratify it -before it takes effect (and even then it takes effect only in those -countries which ratify it), it is still of no consequence for now. - - -@node General index -@unnumbered General index - -@printindex cp - - -@bye -- cgit v1.2.3