Penguin
Diff: HowToFontHOWTO
EditPageHistoryDiffInfoLikePages

Differences between current version and predecessor to the previous major change of HowToFontHOWTO.

Other diffs: Previous Revision, Previous Author, or view the Annotated Edit History

Newer page: version 3 Last edited on Thursday, October 21, 2004 4:56:44 pm by AristotlePagaltzis
Older page: version 2 Last edited on Friday, June 7, 2002 1:06:35 am by perry Revert
@@ -1,2683 +1 @@
-  
-  
-  
-Font HOWTO  
-  
-  
-  
-----  
-  
-!!!Font HOWTO  
-  
-!!Donovan Rebbechi,  
-elflord@panix.com  
-  
-  
-  
-  
-!!1. Introduction  
-  
-  
-*1.1 The Location of This Document  
-  
-*1.2 Rationale  
-  
-*1.3 Credits and Acknowledgements  
-  
-  
-  
-  
-  
-!!2. Fonts 101 -- A Quick Introduction to Fonts  
-  
-  
-*2.1 Types of fonts  
-  
-*2.2 Families of Typefaces  
-  
-  
-  
-  
-  
-!!3. Fonts 102 -- Typography  
-  
-  
-*3.1 Classifications of Typefaces  
-  
-*3.2 Ligatures, Small caps fonts and expert fonts  
-  
-*3.3 Font Metrics and Shapes  
-  
-  
-  
-  
-  
-!!4. Making Fonts Available To X  
-  
-  
-*4.1 The font path  
-  
-*4.2 Installing Type1 Fonts  
-  
-*4.3 True Type Fonts  
-  
-*4.4 xfs  
-  
-  
-  
-  
-  
-!!5. Making Fonts Available To Ghostscript  
-  
-  
-*5.1 Type1  
-  
-*5.2 True Type  
-  
-*5.3 Using Ghostscript To Preview Fonts  
-  
-  
-  
-  
-  
-!!6. True Type to Type1 Conversion  
-  
-  
-*6.1 Why ?  
-  
-*6.2 How ?  
-  
-  
-  
-  
-  
-!!7. WYSIWYG Publishing and Fonts  
-  
-  
-*7.1 Introduction and Overview  
-  
-*7.2 Applixware  
-  
-*7.3 Star Office  
-  
-*7.4 Word Perfect  
-  
-  
-  
-  
-  
-!!8. Netscape  
-  
-  
-  
-  
-!!9. TeX / LaTeX  
-  
-  
-*9.1 A Quick Primer on LaTeX/TeX fonts  
-  
-*9.2 Adding Type1 fonts  
-  
-  
-  
-  
-  
-!!10. Getting Fonts For Linux  
-  
-  
-*10.1 True Type  
-  
-*10.2 Type 1 Fonts and Metafont  
-  
-  
-  
-  
-  
-!!11. Useful Font Software for Linux  
-  
-  
-  
-  
-!!12. Ethics and Licensing Issues Related to Type  
-  
-  
-  
-  
-!!13. References  
-  
-  
-*13.1 Font Information  
-  
-*13.2 Postscript and Printing Information  
-  
-  
-  
-  
-  
-!!14. Glossary  
-----  
-  
-!!1. Introduction  
-  
-!!1.1 The Location of This Document  
-  
-  
-  
-This document is located at  
-my webpage  
-  
-  
-  
-!!1.2 Rationale  
-  
-  
-  
-I'm going to make this brief (-; The purpose of this document is to address  
-what was a gaping hole in font documentation. While previously, there  
-were several documents about fonts for Linux, I felt that none of them  
-were comprehensive, all of them had a relatively narrow focus. Hence  
-the goal of this document is not to provide radical new insight into  
-the issue of font handling ( though I have included material previously  
-unavailable ), the main aim is to provide a comprehensive source to act  
-as a starting point for any and all font questions about Linux.  
-  
-!!1.3 Credits and Acknowledgements  
-  
-  
-  
-Special thanks are due to Rod Smith, who made several helpful suggestions,  
-and fixed pfm2afm.  
-Also thanks to Doug Holland, whose Font Deuglification HOWTO proved  
-to be a good reference, John !McLaughlin, author of the document that  
-helped me come to grips with Star Office,  
-and the Linux community for their suggestions  
-and construtive comments.  
-----  
-  
-!!2. Fonts 101 -- A Quick Introduction to Fonts  
-  
-!!2.1 Types of fonts  
-  
-  
-!Bitmap Fonts  
-  
-  
-A bitmap is a matrix of dots. Bitmap fonts are represented in precisely  
-this way -- as matrices of dots. Because of this, they are  
-''device dependent'' -- they are only useful at a particular  
-resolution. A 75 DPI screen bitmap font is still 75 DPI on your 1200 DPI  
-printer.  
-  
-  
-There are two types of bitmap fonts -- bitmap printer fonts, such as  
-the pk fonts generated by dvips, and bitmap screen fonts,  
-used by X and the console. The bitmap screen fonts typically have  
-a bdf or pcf extension. Bitmap screen  
-fonts are most useful  
-for terminal windows, consoles and text editors, where the lack of  
-scalability and the fact that they are unprintable is not an issue.  
-  
-!Type1 Fonts  
-  
-  
-The Type1 font standard was devised by Adobe, and Type1 fonts are  
-supported by Adobe's postscript standard. Because of this, they are  
-also well supported under linux. They are supported by X and  
-ghostscript. Postscript fonts have traditionally been the choice  
-of font for anything on UNIX that involves printing.  
-  
-  
-Typically, a UNIX Type1 font is distributed as an afm  
-( adobe font metric ) file, and an outline file, which  
-is usually a pfb ( printer font binary ) or  
-pfa ( printer font ascii )  
-file. The outline file  
-contains all the glyphs, while the metric file  
-contains the metrics.  
-  
-  
-Type 1 fonts for other platforms may be distributed in different  
-formats. For example, postscript fonts for windows often use a different  
-format ( pfm ) for the metric file.  
-  
-!Type3 fonts  
-  
-  
-These fonts are distributed in a similar manner to Type1 files --  
-in groups of afm font metrics, and pfa files.  
-While they are supported by the postscript standard, they are not  
-supported by X, and hence have limited use.  
-  
-!!TrueType fonts  
-  
-  
-True type fonts were developed by Apple. They made the format available  
-to Microsoft, and succesfully challenged Adobe's grip on the font  
-market.  
-True type fonts store the metric and shape information in a single  
-file ( usually one with a ttf extension ). Recently,  
-font servers have been developed that make !TrueType available  
-to X. And postscript and ghostscript have supported !TrueType fonts  
-for some time. Because of this, !TrueType fonts are becoming more  
-popular on linux.  
-  
-!Type42 Fonts  
-  
-  
-Type42 fonts are actually just !TrueType fonts with headers that enable  
-them to be rendered by a postscript interpreter. Most applications,  
-such as ghostscript and SAMBA handle these fonts transparently. However,  
-if you have a postscript printer, it may be necessary to explicitly  
-create Type42 font files.  
-  
-!Type1 vs !TrueType -- a comparison  
-  
-  
-Despite the historical feuding between the proponents to Type1 and !TrueType  
-fonts, both have a lot in common. Both are scalable outline fonts.  
-Type1 fonts use cubic as opposed to quadratic curves for the glyphs.  
-This is in theory at least a slight advantage since they include  
-all the curves available to !TrueType fonts. In practice, it makes  
-very little difference.  
-  
-  
-!TrueType fonts have the apparent advantage that their support for  
-hinting is better ( Type1 fonts do have hinting functionality, but it  
-is not as extensive as that of !TrueType fonts ).  
-However, this is only an issue on low resolution  
-devices, such as screens ( the improved hinting makes no discernable  
-difference on a 600dpi printer, even at small point sizes. )  
-The other point that makes this apparent advantage somewhat  
-questionable is the fact that well hinted !TrueType fonts are rare.  
-This is because software packages that support hinting functionality  
-are out of the budget of most small time designers.  
-Only a few major foundries, such as Monotype make well hinted  
-fonts available.  
-  
-  
-In conclusion, the main differences between !TrueType and Type1 fonts  
-are in availability and application support. The widespread availability  
-of !TrueType fonts for Windows has resolted in webpages designed  
-with the assumption that  
-certain !TrueType fonts are available. Also, many users have large  
-numbers of !TrueType fonts because they ship with the users Windows  
-applications. However, on Linux, most applications support Type1 fonts  
-but do not have the same level of support for !TrueType. Moreover, most  
-major font foundries still ship most of their fonts in Type1 format.  
-For example, Adobe ship very few !TrueType fonts.  
-My recommendation to users is to use whatever works for your  
-application, and try to avoid converting from one format to another  
-where possible ( because the format conversion is not without loss ).  
-  
-!Metafont  
-  
-  
-Metafont was developed by Donald E Knuth as part of the TeX typesetting  
-system. Metafont is a graphics programming language ( like postscript )  
-that has applications wider than just fonts.  
-Metafonts exhibit some very desirable qualities. One of the important  
-features is that metafonts can scale very gracefully. The metafont  
-Computer Modern has different shape at 20 point and 10 point. The  
-shape changes with size, because it is desirable for a smaller font  
-to be proportionately wider than a larger font ( this makes the larger  
-fonts more elegant and the smaller font more readable ).  
-  
-  
-Metafonts typically have a mf extension. They are rendered  
-to device dependent bitmap fonts. The rendering is slow, so they  
-are of excellent quality, but are not well suited to WYSIWYG  
-publishing.  
-  
-!!2.2 Families of Typefaces  
-  
-  
-  
-Typically typically come in groups of a few variants. For example,  
-most fonts come with a bold, italic, and bold-italic variant.  
-Some fonts may also have small caps, and demibold variants.  
-A group of fonts consisting of a font and its variants is  
-called a ''family'' of typefaces.  
-For example, the Garamond family consists of Garamond,  
-Garamond-italic, Garamond-bold, Garamond bold-italic,  
-Garamond demi-bold, and Garamond demi-bold-italic. The Adobe  
-expert Garamond font also makes available Garamond small caps,  
-and Garamond titling capitals.  
-----  
-  
-!!3. Fonts 102 -- Typography  
-  
-  
-Here, we discuss some typography basics. While this information  
-is not essential, many font lovers will find it interesting.  
-  
-!!3.1 Classifications of Typefaces  
-  
-  
-!Fixed versus variable width  
-  
-  
-There are several classifications of typefaces. Firstly, there  
-are fixed width fonts, and variable width fonts.  
-The fixed width fonts look like typewriter text, because  
-each character is the same width. This quality is desirable for  
-something like a text editor or a computer console, but not  
-desirable for the body text of  
-a long document. The other class is variable  
-width. Most of the fonts you will use are variable width, though  
-fixed with can be useful also ( for example, all the example  
-shell commands in this document are illustrated with a  
-fixed with font ). The most well known fixed width font  
-is courier.  
-  
-!To serif or not to serif ?  
-  
-  
-Serifs are little hooks on the ends of characters. For example, the  
-letter i in a font such as Times Roman has serifs protruding from  
-the base of the i and the head of the i.  
-Serif fonts are ''usually'' considered more readable than  
-fonts without serifs. There are many different types of serif fonts.  
-  
-  
-Sans serif fonts do not have these little hooks, so they have  
-a starker appearance. One usually does not write a long book  
-using a sans serif font for the body text. There are sans serif  
-fonts that are readable enough to be well suited to documents  
-that are supposed to be browsed / skimmed ( web pages, catalogues,  
-marketting brochures ). Another application that sans serif fonts  
-have is as display fonts on computer screens, especially at  
-small sizes. The lack of detail in the font can provide it with  
-more clarity. For example, Microsoft touts Verdana as being  
-readable at very small sizes on screen.  
-  
-  
-Notable sans serif fonts include Lucida sans, MS Comic Sans,  
-Verdana, Myriad, Avant Garde, Arial, Century Gothic and Helvetica.  
-By the way, Helvetica is considered harmful by typographers.  
-It is somewhat overused, and many books by typographers plead  
-users to stay away from it.  
-  
-!The old and the new -- different types of Serif fonts  
-  
-!Old Style  
-  
-  
-Old style fonts are based on very traditional styles dating as  
-far back as the late 15th century. Old style fonts tend  
-to be conservative in design, and very readable. They are well  
-suited to writing long documents. The name ``old style'' refers  
-to the style of the font, as opposed to the date of its design.  
-There are classic old style fonts, such as Goudy Old Style,  
-which wre designed in the 20th century.  
-The old style class of fonts has the following distinguishing features:  
-  
-  
-*Well defined, shapely serifs.  
-*  
-  
-*Diagonal emphasis. Imagine drawing a font with a fountain pen,  
-where lines 45 degrees anticlockwise from vertical are heavy  
-and lines 45 degrees clockwise from verticle are light. Old style  
-fonts often have this appearance.  
-*  
-  
-*Readability. Old style fonts are almost always very readable.  
-*  
-  
-*Subtlety and lack of contrast. The old style fonts have heavy  
-lines and light lines but the contrast in weight is subtle,  
-not stark.  
-*  
-  
-Notable Old Style fonts include Garamond, Goudy Old Style, Jenson,  
-and Caslon ( the latter is contentious -- some consider it transitional )  
-  
-!Moderns ( or didone )  
-  
-  
-The moderns are the opposite of old style fonts. These fonts  
-typically have more character, and more attitude than their old style  
-counterparts, and can be used to add character to a document rather  
-than to typeset a long piece. However, nothing is black and white --  
-and there are some modern fonts such as computer modern and  
-Monotype modern, and New Century Schoolbook are very readable  
-( the contrast between heavy and light is softened to  
-add readability ).  
-They are based on the designs popular in the 19th century and  
-later. Their distinguishing features include:  
-  
-  
-*Lighter serifs, often just thin horizontal lines.  
-*  
-  
-*Vertical emphasis. Vertical lines are heavy, horizontal  
-lines are light.  
-*  
-  
-*Many moderns have a stark contrast between light and heavy strokes.  
-*  
-  
-*Modern typefaces with high contrast between light and heavy  
-strokes are not as readable as the old style fonts.  
-*  
-  
-Bodoni is the most notable modern. Other moderns include computer  
-modern, and Monotype modern ( on which computer modern is based ).  
-  
-!Transitional  
-  
-  
-Transitional fonts fit somewhere in between moderns and old style fonts.  
-Many of the transitionals have the same kind of readability as the old  
-styles. However, they are based on slightly later design. While  
-a move in the direction of the moderns may be visible in these  
-fonts, they are still much more subtle than the the moderns.  
-Examples of transitionals include Times Roman, Utopia, Bulmer,  
-and Baskerville. Of these, Times leans towards old style, while  
-Bulmer looks very modern.  
-  
-  
-  
-  
-!Slab Serifs  
-  
-  
-The slab serif fonts are so named because they have thick, block  
-like serifs, as opposed to the smooth hooks of the old styles  
-or the thin lines of some of the moderns.  
-Slab serif fonts tend to be sturdy looking and are generally quite  
-readable. Many of the slab serifs have Egyptian names -- such  
-as Nile, and Egyptienne ( though they are not really in any way Egyptian ).  
-These fonts are great for producing readable text that may suffer  
-some dilution in quality ( such as photocpied documents, and documents  
-printed on newspaper ). These fonts tend to look fairly sturdy.  
-The most notable slab serif fonts are Clarendon, Memphis and  
-Egyptienne, as well as several typewriter fonts.  
-Many of the slab serif fonts are fixed width. Conversely, most  
-( almost all ) fixed width fonts are slab serif.  
-  
-!The Sans Serif Revolution  
-  
-  
-Surprisingly, the rise of sans serif fonts is a fairly recent  
-phenomenon. The first well known sans serif fonts were designed in the  
-19th early 20th century. The earlier designs include Futura,  
-Grotesque and Gill Sans. These fonts represent respectively  
-the ``geometric'', ``grotesque'' and ``humanist'' classes  
-of sans serif fonts.  
-  
-!Grotesque  
-  
-  
-The grotesques where so named because the public were initially  
-somewhat shocked by their relatively stark design. Groteques are  
-very bare in appearance due to the absence of serifs, and the simpler,  
-cleaner designs. Because of their ``in your face'' appearance,  
-grotesques are good for headlines. The more readable variations also  
-work quite well for comic books, and marketting brochures,  
-where the body text comes in small doses. Grotesques don't look  
-as artsy as their geometric counterparts.  
-Compared to the geometrics, they have more variation in weight, more  
-strokes, they are squarer ( because they don't use such  
-circular arcs ). They use a different upper case G and lower case  
-a to the geometrics.  
-While they are minimalistic  
-but don't go to the same extreme as the brutally avant-garde  
-geometrics.  
-  
-  
-Notable grotesques include the overused Helvetica, Grotesque,  
-Arial, Franklin Gothic, and Univers.  
-  
-!Geometric  
-  
-  
-The Futura font came with the manifesto: ''form follows function''.  
-The geometric class of fonts has a stark minimalistic appearance.  
-Distinguishing features include a constant line thickness ( no weight ).  
-This is particularly conspicuous in the bold variants of a font.  
-Bold groteques and humanist fonts often show some notable  
-variation in weight while this rarely happens with the geometric  
-fonts. Also notable is the precise minimalism of these designs.  
-The characters almost always are made up from straight horizontal and  
-vertical lines, and arcs that are very circular ( to the point  
-where they often look as though they were drawn with a compass ).  
-The characters have a minimal number  
-of strokes. This gives them a contemporary look in that they  
-embrace the minimalistic philosophy that would later take the  
-world of modern art by storm.  
-A tell tale sign that a font is a geometric type is the upper case  
-``G'', which consists of a minimalistic combination of two  
-strokes -- a long circular arc and a horizontal line.  
-The other character that stands out is the lower case ``a'' --  
-which is again two simple strokes, a straight vertical line and  
-a circle ( the other ``a'' character is more complex which is why  
-it is not used ).  
-Notable geometrics include Avant Garde, Futura, and Century  
-Gothic.  
-  
-!Humanist  
-  
-  
-As the name might suggest, humanist fonts were designed with a goal  
-of being less mechanical in appearance. In many ways, they are  
-more similar to the serif fonts than the geometrics and the  
-grotesques. They are said to have a ``pen drawn'' look about them.  
-They tend to have subtle variation in weight, especially observable  
-in bold variants. The curve shapes are considerably less rigid than  
-those of the geometrics. Many of them are distinguishable by the  
-``double story'' lower case g, which is the same shape as the g  
-used in the old style serif fonts.  
-The humanist typefaces are the easiest to use without producing an  
-ugly document as they are relatively compatible with the old style  
-fonts.  
-  
-!Compatible Typefaces  
-  
-  
-Grouping typefaces is not easy, so it pays to avoid using too many on  
-the one page. A logical choice of two typefaces consists of a serif  
-and a sans serif.  
-Monotype's Typography 101 page  
-provides a category-matchup. They conclude that  
-the moderns and geometrics form good pairs, while  
-the old styles and humanists also go together well.  
-The transitionals are also paired with the humanists.  
-The slab serifs are paired with the grotesques, and  
-some variants of the slab serifs are also said to match  
-the geometrics or humanists.  
-  
-  
-From reading this, one gets the impression that their  
-philosophy is essentially to match the more conservative  
-serifs with the more moderate sans serifs, and pair the  
-wilder modern serifs with the avant garde looking ( pun unavoidable )  
-geometrics.  
-  
-!!3.2 Ligatures, Small caps fonts and expert fonts  
-  
-  
-!Ligatures  
-  
-  
-Properly spacing fonts brings with it all sorts of issues.  
-For example, to properly typeset the letters ``fi'', the i should  
-be very close to the f. The problem is that this causes the dot  
-on the i to collide with the f, and the serif on the head of the i  
-to collide with the horizontal stroke of the f.  
-To deal with this problem, font collections include ligatures.  
-For example, the ``fi'' ligature character is a single character that  
-one can substitute for the the two character string ``fi''.  
-Most fonts contain fi and fl ligatures. Expert fonts discussed  
-later often include extra ligatures, such as ffl, ffi, and a dotless  
-i character.  
-  
-!Small caps fonts  
-  
-  
-Small caps fonts are fonts that have reduced size upper case letters  
-in place of the lower case letters. These are useful for writing  
-headings that require emphasis ( and they are often used in LaTeX ).  
-Typically, when one writes a heading in small caps, they use a large  
-cap for the beginning of each word, and small capitals for the rest  
-of the word ( ``title case'' ). The advantage of this over using  
-all caps is that you get something that is much more readable  
-( using all caps is a big typographic sin ).  
-  
-!Expert fonts  
-  
-  
-Expert fonts consist of several extras designed to supplement a typeface.  
-These include things like ligatures, ornaments ( much like a  
-mini-dingbats collection designed to go with the typeface ),  
-small caps fonts, and swash capitals ( fancy, calligraphic letters ).  
-  
-!!3.3 Font Metrics and Shapes  
-  
-  
-  
-Font metrics define the spacing between variable width fonts.  
-The metrics include information about the size of the font,  
-and ''kerning'' information, which assigns kerning  
-pairs -- pairs of characters that should be given different  
-spacing. For example, the letters ``To'' would usually belong in  
-a kerning pair, because correctly spaced ( or kerned ), the o  
-should partly sit under the T. Typesetting programs such as LaTeX  
-need to know information about kerning so that they can make decisions  
-about where to break lines and pages. The same applies to WYWIWYG  
-publishing programs.  
-  
-  
-In addition to the metrics, is the font outline, or shape.  
-The components of the fonts shape ( a stroke, an accent, etc )  
-are called ``glyphs''.  
-----  
-  
-!! 4. Making Fonts Available To X  
-  
-  
-There are a number of ways fonts can be added to X. Firstly, XFree86  
-has a ''font path'' which is just a list of several directories  
-or ''font servers'' where it searches for fonts. A font server  
-is just a background process that makes fonts available to XFree86.  
-An advantage of font servers is that they can send fonts to remote displays.  
-  
-  
-Recently, xfs ( the ``X font server'' ) has been patched  
-to support !TrueType fonts, and run as a stand-alone program.  
-The patched version ships with Redhat and Redhat-based distributions,  
-and is included in XFree86 3.9.17 ( the latest version at the time of  
-writing. It will also be a part of XFree86 4.0 )  
-xfs is actually just the standard font server that comes  
-with XFree86. It's source code is part of the XFree86 source tree.  
-However, distributions have recently been shipping a version that runs  
-in stand alone mode.  
-The standalone X font server, with the !TrueType support  
-patch ( the !TrueType support takes place via a font server  
-called xfsft ) is probably the nicest font management  
-solution currently available. Its advantages include:  
-  
-  
-*Support for different types of fonts, including Type1, !TrueType  
-and bitmap.  
-*  
-  
-*Makes fonts available to remote displays.  
-*  
-  
-*Greatly simplifies editing the fontpath -- you can do it via  
-the command line utility chkfontpath, as opposed to  
-having to edit configuration files. This not only makes life  
-easier for users, it makes packaging more safer and more scriptable  
-for packagers.  
-*  
-  
-  
-  
-Because different distributions ship with different configurations,  
-it is not true that one size fits all. We can split users up into  
-three groups:  
-  
-  
-*Your distribution ships with a standalone xfs  
-and it has been patched to support !TrueType. This group  
-includes Redhat users and users of derivatives of Redhat  
-such as Mandrake, !TurboLinux, and Independence.  
-For this group, the wisest strategy is to install both !TrueType  
-and Type1 fonts through xfs  
-*  
-  
-*Some distributions ship with a stand alone xfs  
-package, but no !TrueType support (at the time of writing.  
-Note that XFree86 supports !TrueType as of version 3.9.17 ).  
-This includes Debian. For these users, the best thing to do is use  
-xfs to install Type1 fonts, and install !TrueType  
-fonts via xfstt. Debian users can seek out  
-the  
-!TrueType Fonts in Debian mini-HOWTO  
-for information about installing !TrueType fonts in Debian.  
-*  
-  
-*If you don't have xfs then you will need to install  
-Type1 fonts by adding to their XFree86 font path and  
-using xset. You should install !TrueType  
-via xfstt.  
-*  
-  
-  
-!! 4.1 The font path  
-  
-  
-  
-XFree86 finds your fonts by searching a ''font path'',  
-a list of directories ( or servers -- we'll explain this  
-further later. ) containing fonts.  
-When an application requests a font, it searches through  
-the directories in your font path one at a time until the font  
-is found.  
-To make fonts available requires you to set your font path.  
-You can add a directory to your font path with the command  
-  
-  
-xset fp+ directory  
-  
-Once you have done this, you need to ask the X server to re-scan  
-for available fonts with the command  
-  
-xset fp rehash  
-  
-Since you will want these commands to run automatically, you should  
-put them in your .xinitrc file ( or possibly your  
-.Xclients or .xsession file -- this depends on  
-how you start X. It's convenient to make two of these files symlinks  
-to the other to avoid confusion ).  
-Another way to have the commands set automatically is edit XF86Config.  
-For example, to add /usr/share/fonts/myfonts to the fontpath  
-when X is started, edit XF86Config like this:  
-  
-...  
-Section "Files"  
-...  
-!FontPath /usr/share/fonts/myfonts  
-...  
-!EndSection  
-...  
-  
-The advantage of editing XF86Config is that the resulting changes  
-are system wide.  
-  
-!!4.2 Installing Type1 Fonts  
-  
-  
-!Run Type1inst  
-  
-  
-The easiest way to make Type1 fonts available to X is with the  
-help of the Type1inst utility. This is a perlscript that automatically  
-creates the fonts.dir and fonts.scale files that you need for X  
-to use the fonts. Simply CD to the directory, and run type1inst.  
-  
-cd directory  
-type1inst  
-  
-  
-!If You Have the xfs Package  
-  
-  
-Now you need to add the fonts to your fontpath. If you already  
-have the standalone  
-xfs running, you do this  
-by editing your xfs configuration file.  
-''  
-Redhat users can just use  
-chkfontpath.  
-the format is ''  
-chkfontpath --add directory  
-  
-  
-Your fonts should now be available to X. Now you  
-just run  
-  
-xset fp rehash  
-  
-and X will be able to find the new fonts.  
-  
-  
-  
-  
-!If You Don't Have The xfs Package  
-  
-  
-In this case, you need to add the directory containing  
-your new fonts to the font path, as described previously.  
-  
-!!4.3 True Type Fonts  
-  
-  
-  
-Adding !TrueType fonts is a little more difficult, because you need  
-to have a font server that is capable of serving !TrueType fonts.  
-Two font servers that do this are xfstt and xfs.  
-  
-  
-xfstt is a !TrueType font server. While it's easy to configure,  
-and quite useful, it appear that xfs is becoming more popular.  
-The main advantage of xfs over xfstt is that it supports  
-both Type1 and !TrueType fonts.  
-  
-!xfstt  
-  
-  
-To set up xfstt, just download it and install it. If you have an rpm  
-based distribution, there is a well packaged version of xfstt at  
-http://independence.seul.org/.  
-Once you install it, you need to do the following:  
-  
-  
-#  
-install fonts into the appropriate  
-directory ( read the documentation that comes with the package ).  
-#  
-  
-#cd to that directory and run xfstt --sync. This causes it  
-to look for the fonts and create the fonts.dir file.  
-#  
-  
-#Now add unix/:7100 to your font path.  
-#  
-  
-Your !TrueType fonts should now display and be available to applications  
-such as GIMP and Netscape.  
-You may want to configure it to start every time your system starts up.  
-Check to see if there's a startup file included ( if you are using  
-RPM, you can use rpm -ql xfstt |grep init and look for the  
-file with a name something like this: /etc/rc.d/init.d/xfstt  
-)  
-If you don't have an init script, just  
-put two lines in /etc/rc.local like this:  
-  
-/usr/X11R6/bin/xfstt --sync  
-/usr/X11R6/bin/xfstt &  
-  
-  
-!! 4.4 xfs  
-  
-  
-  
-Some of the newer Linux distributions ship with the X font server  
-xfs configured to run as a stand alone program.  
-Notably, Redhat and all the redhat based distributions use this  
-modularised xfs with !TrueType compiled in.  
-Debian also ship xfs, but the version  
-they ship doesn't have built in true  
-type support.  
-  
-  
-Running xfs  
-as a stand alone server has several benefits, especially  
-if it is compiled with !TrueType support. The main advantage is that since  
-the font server is no longer attached to the X server, it is possible  
-to serve fonts to remote displays. Also, it makes it much easier  
-to modify the font path.  
-  
-!The xfs Path  
-  
-  
-As a font server, xfs has it's own font path.  
-One might wonder where this fits into the picture. It  
-works like this: you can place the xfs font server  
-in XFree86's font path, by adding unix/:port to  
-the XFree86 font path.  
-Once you do this, any font in the xfs font path  
-automatically becomes available to XFree86.  
-  
-  
-The xfs font path  
-is determined by the xfs configuration file,  
-which is /etc/X11/fs/config on Redhat, and  
-/etc/X11/xfs/config on Debian.  
-Redhat users do not need to explicitly edit this file, they  
-can use the chkfontpath utility.  
-The syntax is simple:  
-  
-  
-chkfontpath --add directory  
-  
-Users of other distributions can edit the configuration file as  
-follows:  
-  
-catalogue = /usr/X11R6/lib/X11/fonts/misc:unscaled,  
-...  
-/usr/share/fonts/my_new_fonts/,  
-...  
-/usr/share/fonts/some_other_directory  
-# in 12 points, decipoints  
-default-point-size = 120  
-...  
-  
-The above would add /usr/share/fonts/my_new_fonts/ to the  
-xfs font path. ''Note that the last line of the list of  
-directories doesn't have a comma at the end.''  
-For these modifications to the font path to become effective, xfs  
-must be restarted. It's also a good idea to restart your  
-X session after restarting  
-xfs.  
-  
-!Installing a Font Into xfs  
-  
-  
-To prepare a font for xfs, you need to follow the following  
-steps:  
-  
-  
-*If you don't have xfs installed, you need to install it.  
-*  
-  
-*Put the new fonts in a directory.  
-*  
-  
-*If you are installing Type1 fonts,  
-prepare the new directory for the server  
-by running type1inst in the directory.  
-*  
-  
-*If you are installing  
-!TrueType fonts, ( ''remember, not all distributions can do !TrueType via  
-xfs ! '' ), prepare the new directory for the server by running  
-  
-ttmkfdir -o fonts.scale  
-mkfontdir  
-  
-in the directory containing your new fonts.  
-ttmkfdir is part of the ''freetype'' package.  
-*  
-  
-*Now you can add the new directory to your xfs search path.  
-Users of Redhat-like distributions  
-can do this with the chkfontpath utility:  
-Other users can do this by editing their xfs configuration  
-file.  
-*  
-  
-*if xfs is already installed on your system,  
-you should see which port it is running on. You can do this  
-as follows:  
-  
-ps ax|grep xfs  
-  
-  
-*  
-  
-*Then check your XFree86 font path.  
-  
-xset -q  
-  
-  
-*  
-  
-*If your font path includes something like unix:/''port_number''  
-were ''port_number'' is the port which the server is running on, then  
-you already have xfs set up properly. Otherwise, you should add it to  
-your XFree86 font path.  
-  
-xset fp+ unix/:port_number  
-xset fp rehash  
-  
-You can add it permanently by editing your .xinitrc as explained  
-previously.  
-To add it system wide, edit your XF86Config file ( probably either  
-/etc/X11/XF86Config, /etc/XF86Config or  
-/usr/X11R6/lib/X11/XF86Config ), by adding a  
-line !FontPath "unix:/port_number" in the Files section.  
-Here's an example:  
-  
-...  
-Section "Files"  
-...  
-!FontPath "unix/:-1"  
-...  
-!EndSection  
-...  
-  
-  
-*  
-  
-*If xfs is already properly installed, then you can restart  
-it like this:  
-  
-/etc/rc.d/init.d/xfs restart  
-  
-  
-*  
-  
-*After restarting xfs, it's a good idea to restart your  
-X-session.  
-*  
-  
-----  
-  
-!!5. Making Fonts Available To Ghostscript  
-  
-  
-To make fonts available to ghostscript, it suffices to tell ghostscript  
-where the files corresponding to a given font are located. The  
-file that needs to be edited is  
-/usr/share/ghostscript/version/Fontmap.  
-The format is very simple, almost immediately self evident on  
-perusing it.  
-  
-!! 5.1 Type1  
-  
-  
-  
-Adding Type1 fonts is straightforward. Run type1inst on the directory  
-containing the font. type1inst will output a file called  
-Fontmap. Append this file to the ghostscript  
-Fontmap file.  
-  
-!!5.2 True Type  
-  
-  
-  
-Adding truetype fonts is a little trickier, because we have to get the  
-name of the !TrueType font. One way (brute force, alas) to do this is using  
-the ttf2pt1 !TrueType to Type1 converter, and grabbing the font  
-name from the afm ( there's got to be a more efficient way !  
-but this works, ugly as it is ). You do it like this:  
-  
-ttf2pt1 -A fontname - 2 > /dev/null |grep !FontName  
-  
-Then you add an entry to the ghostscript Fontmap file  
-in the correct format, eg  
-  
-some-font (/usr/share/fonts/subdirectory/somefont.pbf);  
-  
-Well, that works fine, but try doing it with 500 or so fonts.  
-This is the kind of thing that calls for a short perlscript:  
-  
-#!/usr/bin/perl  
-# ttfontmap -- generate fontmap file for !TrueType fonts  
-my $directory=shift || print STDERR "Usage: ttfontmap {directory}\n";  
-$directory=~s/\/$//;  
-for my $fontname ( glob ( "$directory/*.ttf" ) )  
-{  
-open ( R, "sh -c \"ttf2pt1 -A $fontname - 2>/dev/null\" |" );  
-while ( <R> )  
-{  
-if ( $_ =~ /^!FontName/ )  
-{  
-s/^!FontName\s*//;  
-chomp;  
-print "/" . $_ . " ($fontname);\n" ;  
-}  
-}  
-close R;  
-}  
-  
-''You can  
-download this script''  
-  
-  
-To set this script up, all you need to do is cut and paste it into  
-a file called ttfontmap, and place the file somewhere  
-in your PATH ( such as /usr/bin ).  
-You run this script like this:  
-  
-ttfontmap directory > output_file  
-  
-where directory is the directory containing the  
-fonts. You are left with the file output_file which you can append  
-to your ghostscript fontmap. Note: some will observe that you could  
-just use  
-  
-ttfontmap directory >> /usr/share/ghostscript/version/Fontmap  
-  
-However, I advise against this ( what would happen if you typed ``>'' instead of  
-``>>''  
-? )  
-  
-!!5.3 Using Ghostscript To Preview Fonts  
-  
-  
-  
-Once you've made fonts available to ghostscript, you can preview them.  
-Do this by running the ghostscript interpreter on the file prfont.ps  
-in your ghostscript installation, and after you start it, type:  
-  
-/Fontname !DoFont  
-  
-at the ghostscript font ( where !FontName is the ghostscript  
-name of the font you wish to preview ).  
-There are several other ways you can invoke gs. For example,  
-if you want to create a postscript file that you can look at in  
-a nicer postscript viewer such as gv, you can use  
-  
-gs -sDEVICE=pswrite -sOutputFile=somefile.ps prfont.ps  
-  
-Having done this, you can also print your output file.  
-  
-  
-  
-----  
-  
-!!6. True Type to Type1 Conversion  
-  
-!!6.1 Why ?  
-  
-  
-  
-or perhaps the right question to ask is ``why not ?'' The typical  
-Linux user has experienced a migration from Windows, and probably  
-has an enormous collection of !TrueType fonts. Many of these  
-fonts ( eg those that ship with MS Word and Corel's products )  
-are of fairly good quality. However, some Linux applications, such  
-as Star Office and LaTeX do not support !TrueType fonts, but do support  
-Type1 fonts. ''update: it looks like Star Office can handle !TrueType  
-fonts, but I'm still trying to work out the details. At best, it involves  
-some fairly gruesome hacks.''  
-This is a pity, because  
-with ghostscript support for !TrueType, and !TrueType font servers,  
-Linux has the infrastructure it needs to handle !TrueType.  
-  
-!!6.2 How ?  
-  
-  
-  
-To convert your !TrueType fonts into Type1 fonts, go to  
-http://quadrant.netspace.net.au/ttf2pt1/  
-and get ttf2pt1.  
-To convert a !TrueType to a Type1 font,  
-use the following syntax:  
-  
-ttf2pt1 -b file.ttf name  
-  
-Where name is the name of the file corresponding to the new Type1  
-font ( ie it's arbitrary. It's a good idea to make it the same as the ttf file.  
-eg ttf2pt1 -b foo.ttf foo.  
-  
-  
-Well, that worked fine for one font. If we have a lot, we  
-need a smarter way to do it. One can just  
-just use a loop:  
-  
-for X in *.ttf; do ttf2pt1 -b $X ${X%%.ttf}; done  
-  
-Alternatively, you can download the  
-ttfutils  
-package and use ttf2type1 for the conversions.  
-  
-ttf2type1 *.ttf  
-  
-----  
-  
-!!7. WYSIWYG Publishing and Fonts  
-  
-!!7.1 Introduction and Overview  
-  
-  
-  
-Installing fonts for WYSIWYG publishing on Linux is a relatively  
-complex task. It typically involves three steps:  
-  
-  
-*Make the font available to the X server  
-*  
-  
-*Make the font available to ghostscript  
-*  
-  
-*Make the font available to the application  
-*  
-  
-The main reason for the complexity is that  
-the ''font printing system'' ( ghostscript ) is unrelated  
-to the ''screen font system''. In a way, Linux's left hand  
-does not know what it's right hand is doing.  
-This problem is nontrivial to solve, because it is possible that  
-printer fonts and display fonts reside on different machines, so there  
-is no guarantee that all fonts the XClient uses are printable.  
-  
-  
-The good news is that most WYSIWYG applications use what is a reasonable solution  
-to this problem. The solution involves constructing some kind of  
-mechanism that maps screen fonts to printer fonts ( this is the main issue.  
-There are also other issues, such as grouping bold, italic and roman variants  
-into ``families'' of fonts ).  
-Unfortunately, there is no standard way to do this. It seems that font management  
-standards which address this issue would greatly simplify the installation  
-of fonts into WYSIWYG publishing systems, because all applications could  
-use a system-wide ( as opposed to application-specific ) configuration.  
-  
-!!7.2 Applixware  
-  
-  
-  
-There are two ways to install fonts into Applixware. One method  
-involves using !FontTastic, which is Applixware's ``private'' font  
-server. The other method involves editing Applixware's fontmap,  
-to use a font already installed on the system. Installing into the  
-font server is more convenient, but fonts installed in this manner may  
-only be printed at 300 dpi.  
-  
-!!FontTastic  
-  
-  
-Using !FontTastic is the easy way to do it. To install new fonts  
-like this, simply do the following:  
-  
-  
-#Run Applixware as root  
-#  
-  
-#Click on the ''tools'' menu.  
-#  
-  
-#Choose ``Font Installer''  
-#  
-  
-#Check ``OK'' in the popup dialog  
-#  
-  
-#Click the ``Catalogs'' menu and choose ``create''  
-#  
-  
-#Fill in the ''catalog name'' box. It  
-doesn't matter what you put there. For the rest of this example,  
-we'll assume it's called ``foobar''  
-#  
-  
-#Select your foobar catalog from the catalog manipulations  
-list.  
-#  
-  
-#From the ``Services'' menu, select  
-``install fonts into -> !FontTastic font server''  
-#  
-  
-#Make sure catalog foobar is selected in the catalogs list,  
-then press the ``select files'' button.  
-#  
-  
-#Use the select files dialog to select the fonts you want to  
-install. Press ``OK'' when you've selected the files.  
-For example, if you want to select arial.ttf in  
-the directory /usr/share/fonts/ttfonts/, you would type  
-''/usr/share/fonts/ttfonts'' in the ``Current Directory''  
-dialog, then select arial.ttf from the files dialog box, then click  
-``OK''. Note that you can select multiple files, but they all must  
-come from the same directory.  
-#  
-  
-#You can edit your list by checking on the different fonts in the  
-list box and possibly removing or renaming them.  
-#  
-  
-#When you're ready, click the ``install fonts'' button. Then click  
-``OK''.  
-#  
-  
-#Go to the ``services'' menu and choose ``update''. Check ``OK''  
-on the annoying modal dialog, then choose exit from the services menu.  
-Exit applix.  
-#  
-  
-#Congrats, you're done ! The new fonts will be available when you  
-restart Applix.  
-#  
-  
-  
-!Using System Wide Fonts With Applixware  
-  
-  
-This method is more involved, but produces better results. I recommend  
-that this method is used for fonts that are really important, and that  
-you use a lot. There are a few steps to this:  
-  
-!Make the fonts available to X  
-  
-  
-This is explained  
-in the previous section  
-!Make the fonts available to ghostscript  
-  
-  
-This is explained in  
-in the previous section  
-!Edit the fontmap.dir  
-  
-  
-This is the final step in making your fonts available to Applix, and  
-also the most time consuming step. The file ''fontmap.dir''  
-is in under the ''axdata/fontmetrics'' of your applix installation.  
-The purpose of this step is basically to tell applix which screen fonts  
-go with which outline fonts. This is in general a very nontrivial problem,  
-because the screen fonts are not always on the same computer that the  
-application is installed.  
-  
-  
-We describe how to add fonts to fontmap.dir. In this example, we  
-add the font Baskerville Italic.  
-  
-  
-  
-  
-  
-#First, we add a line that says  
-!FontRecord = Baskerville-Normal-Italic  
-In fact, the name we use in !FontRecord is completely arbitrary.  
-However, the font record must be unique to the font. Because of  
-this, it's good practice to use the name that ghostscript  
-uses for the font.  
-#  
-  
-#Next, we a line that says  
-Family = Baskerville  
-The family name for a font is the name that appears  
-in Applix's font selection menu. Typically, it is ''non-unique'',  
-since bold, italic, roman and bold-italic variants of a font will  
-typically go under the same family.  
-#  
-  
-#If the font is either a bold, or italic variant, or both, we need to add the  
-following lines:  
-  
-Slant = 1  
-  
-if the font is italic, and  
-  
-Weight = 1  
-  
-if the font is bold.  
-If the font is bold ''and'' italic, we add both lines.  
-In this example, we need only add the line  
-  
-Slant = 1  
-  
-  
-#  
-  
-#We add a line that looks like this:  
-  
-!ScreenName = "-paradise-baskerville-medium-i-normal------p--iso8859-1"  
-  
-The screen name is the name that the X-server uses for the font.  
-We can list font names containing the string ``bask'' by typing  
-  
-xlsfonts|grep -i bask  
-  
-  
-#  
-  
-#Now we add a line that gives the name of the printer font:  
-!PostScriptPrinterName = Baskerville-Normal-Italic  
-#  
-  
-#Next, we need to specify the location of the font metric file  
-and the outline file  
-  
-!MetricsFile = /usr/share/fonts/misc/baskvli.afm  
-Type1FontFileName = /usr/share/fonts/misc/baskvli.pfb  
-  
-If you are adding a !TrueType file, you can use ttf2pt1  
-to generate an afm file :  
-  
-ttf2pt1 -A foo.ttf - > foo.afm  
-  
-( or get the ttfutils package and use ttf2afm )  
-Then you use something like this:  
-  
-!MetricsFile = /usr/share/fonts/misc/foo.afm  
-  
-Do ''not'' include a Type1FontFileName directive --  
-let ghostscript take care of this.  
-#  
-  
-  
-  
-That's it. Now after adding the whole family of fonts, you should  
-have something like this:  
-  
-!FontRecord = Baskerville-Normal  
-Family = Baskerville  
-!ScreenName = "-paradise-baskerville-medium-r-normal------p--iso8859-1"  
-!PostScriptPrintName = Baskerville-Normal  
-!MetricsFile = /usr/share/fonts/misc/baskvl.afm  
-Type1FontFileName = /usr/share/fonts/misc/baskvl.pfb  
-!FontRecord = Baskerville-Normal-Italic  
-Family = Baskerville  
-Slant = 1  
-!ScreenName = "-paradise-baskerville-medium-i-normal------p--iso8859-1"  
-!PostScriptPrintName = Baskerville-Normal-Italic  
-!MetricsFile = /usr/share/fonts/misc/baskvli.afm  
-Type1FontFileName = /usr/share/fonts/misc/baskvli.pfb  
-!FontRecord = Baskerville-Bold  
-Family = Baskerville  
-Weight = 1  
-!ScreenName = "-paradise-baskerville-bold-r-normal------p--iso8859-1"  
-!PostScriptPrintName = Baskerville-Bold  
-!MetricsFile = /usr/share/fonts/misc/baskvlb.afm  
-Type1FontFileName = /usr/share/fonts/misc/baskvlb.pfb  
-!FontRecord = Baskerville-Bold-Italic  
-Family = Baskerville  
-Weight = 1  
-Slant = 1  
-!ScreenName = "-paradise-baskerville-bold-i-normal------p--iso8859-1"  
-!PostScriptPrintName = Baskerville-Bold-Italic  
-!MetricsFile = /usr/share/fonts/misc/baskvlbi.afm  
-Type1FontFileName = /usr/share/fonts/misc/baskvlbi.pfb  
-  
-  
-  
-  
-  
-  
-It is possible to do more with this configuration file. The file itself  
-has a ''glossary'' which explains the format of the configuration  
-file.  
-  
-!!7.3 Star Office  
-  
-  
-  
-Here, we cover Star Office 5.. The procedure with Star Office 5.1  
-is similar,  
-but the utility is called spadmin, not psetup.  
-It's worth mentioning up front that  
-John !McLaughlin's page  
-is an excellent source on this issue, and it inspired most  
-of what follows.  
-  
-  
-Having tried both Star Office 5., and 5.1, I have found that Star Office  
-5.1 seems to give me less grief when adding new fonts. I was not succesful  
-adding true type fonts to Star Office 5., but it proved somewhat easier  
-with Star Office 5.1.  
-  
-!Backup Your Configuration Before you Start !  
-  
-  
-It's good to make a backup in case you inadvertantly hose your  
-configuration. Modifying fonts will impact several files in the  
-xp3.  
-You should definitely backup the file xp3/psstd.fonts.  
-I recommend going further and backing up the whole xp3  
-directory. You can do this by cd-ing to your Star Office  
-directory, then using  
-  
-tar cvzf xp3.tgz xp3  
-  
-to create a backup. To restore a backup,  
-delete the xp3 directory and unpack the archive  
-  
-rm -rf xp3  
-tar xvzf xp3.tgz  
-  
-  
-!Adding Type1 Fonts to Star Office  
-  
-  
-Adding Type1 fonts to Star Office is relatively simple.  
-If you want to use your !TrueType fonts with Star Office 5.,  
-the best thing to do is convert them to Type1 fonts, and then follow  
-the procedure outlined here. If you have Star Office 5.1, you  
-might wish to use the proceedure for installing !TrueType fonts  
-instead ( though it is somewhat more difficult ).  
-Firstly, do the usual thing -- make the font available to both X and  
-ghostscript. Once this is done, the font can be installed into Star Office  
-using the psetup tool. The procedure is as follows:  
-  
-  
-#As root, run psetup ( or spadmin if you have Star Office 5.1 )  
-#  
-  
-#Press the ``add fonts'' button.  
-#  
-  
-#The easiest thing to do after  
-this is press the ``initialize font paths'' button. This puts a  
-list of all fonts in your X font path in the list box.  
-#  
-  
-#Choose  
-the directory containing the font you wish to install ( it should  
-be in the box ), and then press ``OK''.  
-#  
-  
-#Click the ``convert all font metrics button''.  
-#  
-  
-That's it. You're done. You can exit ( or click ``OK'' until it exits ).  
-When you restart Star Office, you will have the new fonts.  
-  
-!Adding !TrueType Fonts to Star Office  
-  
-  
-Adding !TrueType fonts to Star Office is  
-nontrivial, but possible.  
-After some hard work, and long hours stareing at  
-John !McLaughlin's page  
-page, I finally got them working in Star Office 5.1.  
-Note that this does not work with version 5..  
-The following steps are appropriate it you are printing  
-through ghostscript:  
-  
-  
-*Make the fonts available to X.  
-*  
-  
-*Make the fonts available to ghostscript.  
-*  
-  
-*You need to have afm files for the fonts you wish to  
-add. Use  
-  
-ttf2pt1 -A foo.ttf - > foo.afm  
-  
-to create the afm files.  
-Alternatively, you can get the  
-*  
-  
-*  
-ttfutils  
-package  
-and use ttf2afm The advantage of this  
-is you can handle several at a time, eg  
-  
-ttf2afm *.ttf  
-  
-  
-*  
-  
-*Star Office needs pfb files corresponding  
-to each ttf file. You can create them  
-with the command  
-  
-touch foo.pfb  
-  
-Actually, Star Office only uses these files for printing purposes.  
-And by enterring the font in the PPD, thus duping Star Office into  
-thinking the fonts are inside your printer ( when they're actually  
-inside ghostscript's rendering system ), you get around needing to  
-use these files. Star Office just seems to require that the  
-pfb file exists to install the font.  
-  
-*  
-  
-* Now you can run spadmin and install the font(s).  
-*  
-  
-*  
-Now add the fonts to the PPD file corresponding to your  
-printer configuration. The name you use for the font should  
-be the same name Star Office uses for it, ''not'' the  
-ghostscript font name. For example, if the font is  
-foobar.ttf and the corresponding afm  
-file is foobar.afm, you use the name  
-``foobar'' for the font in the PPD file. The entry  
-should look something like this:  
-  
-*Font cloistrk: Standard "(001.002)" Standard ROM  
-  
-  
-*  
-  
-  
-  
-On the other hand, if you are not printing from ghostscript,  
-you have different issues to deal with. In this case,  
-tricking Star Office into thinking that your printer has the fonts  
-is a bad idea, because your printer does ''not'' have the  
-fonts in the ROM, so while gv will display the postscript  
-files nicely, your printer will not be able to print them.  
-If you have a postscript printer, the main differences are as follows:  
-  
-  
-*Do not edit the PPD file.  
-*  
-  
-*Instead of using touch foo.pfb to create empty pfb  
-files, you need the pfb files to be Type42 postscript  
-fonts. A Type42 font is really a ``printer !TrueType font''.  
-You don't really notice Type42 fonts even when you use them, because  
-most applications handle them transparently.  
-To create Type42 fonts, you use  
-ttfps to create the files.  
-  
-ttfps foo.ttf foo.pfb  
-  
-  
-*  
-  
-  
-  
-  
-  
-  
-There are some gotchas. Sometimes, Star Office might not choose the  
-screen font you like. It is sometimes worth checking  
-xp3/psstd.fonts and possibly editing it to make sure  
-that Star Office is really using the font you had in mind for screen  
-display.  
-Also, Star Office doesn't handle configuration problems gracefully.  
-If there's something wrong with your configuration, it's  
-possible that the word processor will not even start. This is why  
-you should back up your xp3 directory.  
-  
-!Under the Hood  
-  
-  
-If you wish to install !TrueType fonts in Star Office, you may need  
-to learn how Star Office handles things. When you run spadmin  
-or psetup, the following happens:  
-  
-  
-*Star Office makes symbolic links to the pfb outline  
-files in your xp3/pssoftfonts directory.  
-*  
-  
-*The afm file is copied into the directory  
-xp3/fontmetrics/afm/  
-*  
-  
-*An entry is added to the xp3/psstd.fonts file.  
-This file stores the names of all the screen fonts used by  
-Star Office ( in particular, it maps the screen fonts to the outline  
-filenames ).  
-*  
-  
-  
-  
-This is why it's good to simply backup the whole xp3 directory --  
-it is the only convenient way to restore Star Office to a  
-clean configuration.  
-  
-!!7.4 Word Perfect  
-  
-  
-  
-Nothing yet.  
-Rod Smith's webpage  
-is the definitive resource regarding installing fonts on Word Perfect.  
-----  
-  
-!!8. Netscape  
-  
-  
-Perhaps the most notorious application as far as fonts are concerned is the  
-dreaded Netscape. However, there is a fairly simple procedure to attack  
-Netscape font ugliness. The main problem is that Netscape wants to use  
-75dpi fonts which is typically too small. You can fix this by specifying  
-the appropriate X resources in your .Xdefaults file:  
-  
-Netscape*documentFonts.sizeIncrement: 20  
-Netscape*documentFonts.xResolution*iso-8859-1: 100  
-Netscape*documentFonts.yResolution*iso-8859-1: 100  
-  
-The number 100 can be chosen arbitrarily. For example, if you like your  
-fonts really large, like I do, then you may want to use 150 instead.  
-  
-  
-The other essential tip with regard to addressing Netscape font ugliness is this --  
-get the Microsoft font pack. These fonts are widely used and it makes an enormous  
-difference if you have ( or don't have ) those fonts.  
-----  
-  
-!!9. TeX / LaTeX  
-  
-!!9.1 A Quick Primer on LaTeX/TeX fonts  
-  
-  
-  
-Adding fonts to TeX and LaTeX is a somewhat complex procedure. However, like  
-a lot of things, it's easy if you know how to do it.  
-Some fonts are distributed in metafont format, and some in Type1 format.  
-Usually, the Type1 formats are more easily available. However, metafont fonts have  
-the distinct advantage that they can adjust their shape at different sizes,  
-while Type1 and !TrueType fonts at different point sizes are simply magnified  
-or reduced versions of precisely the same shape. The main reason why this feature  
-is desirable is that ideally, fonts should be ( relatively ) wider at smaller  
-sizes and narrower at larger sizes.  
-  
-  
-For this discussion, we focus on Type1 fonts, since they are more widely  
-available, and more problematic to install.  
-  
-  
-Here's a quick primer on LaTeX fonts. LaTeX uses the following  
-types of font files for handling Type1 fonts:  
-  
-  
-* .pl -- property list. This is a human readable version of a  
-tex font metric file.  
-*  
-  
-* .vpl -- virtual property list. Human readable version of a  
-virtual font file.  
-*  
-  
-* .fd -- font definition. Used to define a ''family'' of  
-fonts.  
-*  
-  
-* .tfm -- tex font metric. This is a metric file, as explained  
-in the glossary. It is completely analogous to the .afm files used  
-by Type1 fonts. TeX needs the font metrics to properly layout the page.  
-*  
-  
-* .vf -- virtual font. These files contain encoding details, and  
-act as interpreters. TeX treats them as fonts. For example,  
-Imagine that there's some wacky font foobar-exp.pfb which consists  
-of a few ( say 20 ) alternate characters, and there's a virtual font  
-which uses a few of these alternate characters ( and it gets the  
-rest of the characters from font foobar.pfb ).  
-Dvips might say  
-``I want character 65 of virtual font foo.vf''. Dvips knows that 65 is always  
-an ``a'' in TeX's scheme. Then the virtual font maps TeX's request to  
-a request for character 14 of the Type1 font foobar.pfb ( which might  
-be the alternate ``a'' in the Type1 font foobar.pfb ). The virtual font  
-mechanism is very flexible and allows fonts to be constructed from many  
-different font files. This is useful when using fonts such as adobe's  
-``expert'' fonts.  
-*  
-  
-* .pk -- a device dependent bitmap font. These are usually constructed  
-on an as-needed basis ( they are renderings of Type1 and metafont fonts ).  
-They are typically high resolution ( about 300-1200dpi ),  
-and are intended to be rendered on a printer. Because of their high resolution,  
-and the fact that each point size of each font requires a .pk file,  
-they require a lot of disk space, so they are cached, but not stored.  
-*  
-  
-*.mf -- metafont files. Metafont is a graphics programming language  
-widely used for font design ( though it can also be used for graphics ).  
-It has many advantages over !TrueType and Type1 schemes. However, it's main  
-weakness is that it is not as ubiquitous as !TrueType or Type1 ( and it is also  
-not terribly well suited to WYSIWYG publishing. Of course, this isn't a  
-major disadvantage when TeX is your typesetting system. )  
-  
-*  
-  
-  
-  
-  
-  
-  
-It's good to know your way around the TeX directory structure. Here are  
-the main directories you'll need to know about:  
-  
-  
-* $TEXMF/fonts -- the main font directory  
-*  
-  
-* $TEXMF/fonts/type1 -- the type1 font directory  
-*  
-  
-* $TEXMF/fonts/type1/foundry -- the directory for the shape files in a given foundry  
-*  
-  
-* $TEXMF/fonts/type1/foundry/fontname -- contains the font called ''name''.  
-The ''name'' is usually plain English, and needn't follow TeX's cryptic  
-naming scheme for fonts.  
-*  
-  
-* $TEXMF/fonts/afm/foundry/fontname -- the directory containing the afm  
-files corresponding to the font name belonging to foundry foundry.  
-*  
-  
-* $TEXMF/fonts/tfm/foundry/fontname -- analogous to the afm directory,  
-but contains tfm files instead.  
-*  
-  
-*$TEXMF/fonts/vf/foundry/fontname -- similar to the above, but contains the virtual fonts.  
-*  
-  
-*$TEXMF/fonts/source/foundry/fontname -- similar to the above, but contains metafont files.  
-*  
-  
-*$TEXMF/dvips/config/psfonts.map -- fontmap file for dvips. This file is similar  
-in both function and format to ghostscript's Fontmap file.  
-*  
-  
-*$TEXMF/tex/latex/psnfss -- this is where all the font definition files go.  
-*  
-  
-  
-  
-  
-  
-!!9.2 Adding Type1 fonts  
-  
-  
-!Naming the fonts  
-  
-  
-First, you need to appropriately name your fonts.  
-See the fontinst documentation on your system for instructions  
-on how to name fonts ( it should be fontinst subdirectory of the  
-directory containing your tetex documentation ).  
-To make a long story very short, the naming scheme is  
-FNW{V}E{n} where:  
-  
-  
-*F is a one-letter abbreviation for the foundry ( m = monotype, p = adobe,  
-b = bitstream, f = free )  
-*  
-  
-*N is a two letter abbreviation for the font name  
-( for example, ag = ``avant garde'' )  
-*  
-  
-*W is the font weight ( r = regular, b = bold, l = light d = demibold )  
-*  
-  
-*V is an optional slope variant ( i = italic , o = oblique )  
-*  
-  
-*E is an abbreviation for the encoding ( almost always 8a which is  
-adobe standard encoding ).  
-*  
-  
-*N is an optional width variant ( n = narrow )  
-*  
-  
-For example, the font Adobe Garamond demibold is pgad8a.  
-  
-!Creating the virtual fonts and tex font metrics  
-  
-  
-Now you can run fontinst as follows:  
-  
-latex `kpsewhich fontinst.sty`  
-  
-then you type at the prompt:  
-  
-\latinfamily{font_name}{}\bye  
-  
-where font_name is the first three letters of your  
-font file name ( for example, pad for adobe garamond ).  
-Now fontinst will generate a number of files --  
-font description files, property list files and virtual property  
-list files. It also generates a lot of .mtx files. These  
-are created by fontinst, but you don't need to use them.  
-You need to convert the property lists and virtual property lists  
-to metrics and virtual fonts. This is done using the utilities  
-vptovf and pltotf.  
-  
-for X in *.pl; do pltotf $X; done  
-for X in *.vpl; do vptovf $X; done  
-  
-Then remove the old vpl, pl and mtx files.  
-  
-!Configure dvips  
-  
-  
-You will need to edit your dvips config file, psfonts.map.  
-The best way to explain the format of the file is to give an example.  
-  
-marr8r ArialMT <8r.enc <farr8a.pfa  
-marbi8r Arial_BoldItalicMT <8r.enc <farbi8a.pfa  
-marb8r Arial_BoldMT <8r.enc <farb8a.pfa  
-marri8r Arial_ItalicMT <8r.enc <farri8a.pfa  
-marr8rn Arial_Narrow <8r.enc <farr8an.pfa  
-  
-The 8r.enc is simply there to inform dvips of the encoding scheme  
-used ( in all our examples, it's 8r, because of the way fontinst  
-constructs the virtual fonts ). The leftmost column is the font name TeX  
-uses. The second column is the real name of the font, which is hardcoded  
-into the font file ( this name can be  
-deduced by opening the afm file in a text editor, and looking  
-for the !FontName directive ). The last column is the filename  
-of the shape file corresponding with the font. It is not necessary to  
-provide a directory path -- tex knows where to look.  
-  
-!Test the font  
-  
-  
-Try running latex on a document like this:  
-  
-\documentclass{article}  
-\begin{document}  
-\usefont{T1}{pga}{m}{n}\selectfont  
-\huge  
-Testing a new font \dots the quick red fox jumped over the lazy brown dogs  
-\end{document}  
-  
-where you replace pga with the outline of your font.  
-If this works, you are almost done. All you have to do now is put all the  
-files in the right directories ( as explained in the primer ), then  
-run  
-  
-texconfig rehash  
-  
-so that tex can update the directory lists.  
-  
-!Create a .sty file  
-  
-  
-You may want to create a .sty file so that you can more easily use  
-fonts. Use the files in $TEXMF/tex/latex/psnfss as a template.  
-----  
-  
-!!10. Getting Fonts For Linux  
-  
-!!10.1 True Type  
-  
-  
-!Commercial Software  
-  
-  
-True type fonts are very  
-easy to come by, and large amounts of them are typically included  
-in packages like Microsoft Word and Word Perfect. Getting Word  
-Perfect is an easy way to get an enormous amount of fonts ( and  
-if you're really cheap, you could buy a legacy version of Word Perfect for  
-windows. The fonts on the CD are readable. )  
-  
-!Microsoft's Font Download  
-  
-  
-Microsoft have also made several !TrueType fonts available. The  
-.exe file is simply an archive, you can extract it  
-using unzip.  
-You can get them from  
-the download site  
-!Luc's Webpage  
-  
-  
-  
-Luc Devroye's webpage  
-has links to several sites with free fonts available.  
-What's unique about these fonts is that a lot of them are really free, they  
-are not ``warez fonts''.  
-  
-!Web sites with truetype fonts  
-  
-  
-There are several web sites offering freely available downloadable  
-fonts. For example,  
-the freeware connection has links to a number of archives.  
-  
-!Foundries  
-  
-  
-Several foundries sell !TrueType fonts. However, most of them  
-are quite expensive, and for the same money, you'd be better  
-of with Type1 fonts. I'll discuss these more in the Type1 fonts  
-section. The one place that does do sell true type fonts  
-at low prices is  
-buyfonts.  
-Please read the section on ethics before you buy cheap fonts.  
-  
-!!10.2 Type 1 Fonts and Metafont  
-  
-  
-!Dealing With Mac and Windows Formats  
-  
-  
-Many foundries ship fonts with Windows and Mac users in mind.  
-This can sometimes pose a problem. Typically, the ``Windows fonts''  
-are fairly easy to handle, because they are packed in a zip  
-file. The only work to be done is converting the pfm file  
-to and afm file ( using pfm2afm ).  
-  
-  
-Macintosh fonts are more problematic, because they are typically  
-made available in .sit.bin format -- stuffit archives.  
-Unfortunately, there is no tool for Linux that can unpack stuffit archives  
-created with the newer version of stuffit.  
-The only way to do it is run Executor ( Mac emulator ), or try running  
-stuffit in dosemu or Wine.  
-Once the sit.bin file is unpacked, the Macintosh files can  
-be converted using t1unmac which comes with the  
-t1utils package.  
-  
-  
-Unfortunately, some vendors only ship Type1 fonts in Macintosh format  
-( stuffit archives ). However, according to font expert  
-Luc Devroye, all major  
-foundries make Type1 fonts available for Mac and Windows.  
-  
-!Free Stuff  
-  
-  
-  
-ctan  
-have a number of good fonts, many of which are free.  
-Most of these are in Metafont format, though some are also  
-Type1 fonts.  
-Also, see  
-Bluesky  
-who have made available Type1 versions of the computer modern  
-fonts. ( The computer modern fonts are of excellent quality --  
-to purchase anything of comparable quality and completeness  
-will cost you around $500-. They are comparable to the premium  
-fonts. )  
-  
-  
-  
-Luc Devroye's webpage  
-has links to several sites with free fonts available.  
-What's unique about these fonts is that a lot of them are really free, they  
-are not ``warez fonts''.  
-  
-  
-URW have released the standard postscript fonts resident in most  
-printers to the public domain. These fonts are quite good.  
-  
-  
-The  
-Walnut Creek Archive  
-has several freely available fonts, and shareware fonts.  
-Some of these are obvious ripoffs ( and not very good ones ).  
-If a font doesn't come with some kind of license, chances are  
-it's a ripoff.  
-Also  
-Winsite  
-have several Type1 fonts ( in the fonts/atm subsection of their  
-windows 3.x software ). Unfortunately, several of  
-these have afm files which have mistakes and are missing  
-all kerning pairs ( you can fix the afms by editing  
-the "!FontName" section of the afm files. It should match  
-the fontname given in the font shape file. Of course, adding  
-kerning pairs is a topic beyond the scope of this document. )  
-  
-  
-  
-Luc Devroye's webpage  
-includes several free fonts he designed, as well as a lot of  
-links, and fascinating discussion on the topic of typography.  
-This site is a ``must-visit''.  
-There are also several links to many foundries.  
-  
-!Commercial Fonts  
-  
-!Value vs Premium: Why Should I buy Premium Fonts ?  
-  
-  
-So you're wondering -- why do some fonts cost a lot and others  
-are cheap ?  
-These fonts are the ``standard postscript  
-fonts'' resident in most postscript printers. Also the famous  
-Why should I buy the more expensive ones ?  
-My take on it is that for a casual user, the value fonts  
-( such as those on the Bitstream CD ) are just  
-fine. However, if you're using the fonts for ``real work'', or  
-you're just a hard core font junkie, then the better quality  
-fonts are a must-have -- and most of the quality fonts are either  
-free ( for example, Computer Modern ), or they are upmarket commercial  
-fonts.  
-  
-  
-The advantage of the cheaper fonts is self evident -- they are cheaper.  
-The quality fonts also have their advantages though.  
-  
-  
-*''Ethical issues:'' The cheaper fonts  
-are almost always ripoffs. Type design takes a long time and  
-and experienced designer. Fonts that are sold for less than $1-  
-per font were almost certainly not designed by the vendor.  
-CDs with insane quantities of fonts on the are almost always  
-ripoffs ( the possible exceptions being collections from major  
-foundries that cost thousands of dollars ).  
-Usually, the ripoffs lack the quality of fonts from respectable  
-founries.  
-*  
-  
-*''Completeness:'' The higher quality fonts ( notably  
-from Adobe ) come in several variants, with some nice supplements to  
-provide the user with a more complete font family.  
-There are often bold, italic,  
-and demibold variants, swash capitals, small caps,  
-old style figures, and extra  
-ligatures to supplement the font. More recently, Adobe have a multiple  
-master technology which gives the user ( almost ) infinite variation  
-within one font family.  
-*  
-  
-*''Quality:'' A lot of the freely available fonts or the cheap  
-ripoffs lack fairly essential features such as kerning pairs and  
-decent ligatures. They are basically cheap copies. In contrast,  
-reputable designers take a lot of trouble to study the original  
-design, and rework it to the best of their ability.  
-*  
-  
-*''Authenticity:'' The person who designed Adobe Garamond  
-( Robert Slimbach ) actually studied the original designs of  
-Claude Garamond. In fact reputable foundries always  
-carefully research their designs, rather than just swiping something  
-off the net, and modifying it with Fontographer.  
-*  
-  
-  
-!Value  
-  
-  
-  
-  
-  
-*An excellent place to go for a CD packed with several Type1  
-fonts of reasonable quality is  
-Bitstream.  
-Bitstreams more noted products include their  
-250 font CD  
-and their  
-500 font CD  
-( the latter goes for $50- at the time of writing ).  
-These are fairly good quality fonts, and are a fairly good starting  
-point for the casual user.  
-The fonts used in Corel's products are (mostly) licensed from bitstream.  
-*  
-  
-*  
-Matchfonts offer more modestly priced fonts --  
-they are distributed in ``packs'' of about 8 fonts  
-for $30. This includes some nice calligraphic fonts.  
-All fonts seem to be offered in a usable format  
-( the windows ATM fonts come in a .exe file.  
-Don't let the extension fool you -- it's just a zip archive ).  
-These are not ripoffs as far as I can tell.  
-*  
-  
-*  
-EFF  
-sell !TrueType fonts for $2- per hit.  
-They also have ``professional range'' postscript and !TrueType  
-fonts for $16- per typeface.  
-*  
-  
-  
-!Premium  
-  
-  
-  
-  
-  
-*Adobe have several  
-high quality, fonts available at  
-Adobe's type website.  
-Some of these are expensive, but they have several  
-more affordable bundles -- see  
-Adobe Type Collections.  
-Adobe have some of the most complete font families on the market,  
-for example,  
-Garamond,  
-Caslon,  
-and their  
-multiple masters  
-( Myriad and Minion, used on their website are among the nicer  
-of their multiple masters. )  
-*  
-  
-*  
-Berthold Types Limited  
-is a major foundry, who offer several quality fonts. Some of  
-them are resold through Adobe, all are directly available  
-from Berthold. Same price ballpark as Adobe.  
-*  
-  
-*ITC develop several  
-quality fonts ( including some of the ones Corel ships with  
-their products ) at  
-http://www.itcfonts.com  
-They offer family packages for about $100-180 US.  
-Their fonts, come in both Type1  
-and !TrueType format. It's better to choose the  
-``Windows'' package, because Mac formats are difficult  
-to handle on Linux.  
-*  
-  
-*  
-Linotype  
-are a well known foundry who offer fonts by legendary designers  
-including Herman Zapf. ( yep, the guy ``Zapf Chancery'' is named after.  
-He also designed Palatino. )  
-*  
-  
-*  
-Monotype  
-develop most of the fonts shipped with Microsoft  
-products. One of the older and well respected foundries.  
-*  
-  
-*  
-Tiro Typeworks  
-sell good quality, if somewhat expensive typefaces.  
-Their typefaces are very complete, for example, they  
-include complete sets of ligatures, and smallcaps, titling  
-fonts, etc.  
-UNIX is listed as one of the OS options -- which is a welcome  
-surprise after seeing the words ``Windows or Mac'' too many times..  
-*  
-  
-  
-!More Links  
-  
-  
-For links to a bunch of other foundries,  
-see  
-Luc Devroye's page  
-  
-  
-----  
-  
-!!11. Useful Font Software for Linux  
-  
-  
-There are several font packages for Linux. Many of them are essential.  
-  
-  
-*chkfontpath is a utility for manipulating the xfs configuration  
-file.  
-*  
-  
-*  
-DTM -- the Definitive Type Manager  
-is a global font management tool. This is a developer's release.  
-*  
-  
-*  
-fontinst is a LaTeX package designed to simplify the installation  
-of Type1 fonts into LaTeX.  
-  
-*  
-  
-*  
-Freetype  
-is a !TrueType library that comes with most Linux distributions  
-*  
-  
-*  
-Ghostscript  
-is the software that is used for printing on Linux. The version  
-of ghostscript that ships with Linux is GNU ghostscript. This is one version behind  
-the latest release of Aladdin ghostscript ( who release their old versions  
-under the GPL )  
-*  
-  
-*  
-pfm2afm  
-is a utility for converting windows pfm font  
-metric files into afm metrics that can be used  
-for Linux. This is based on the original version available  
-at CTAN, and includes modifications from Rod Smith to make  
-it compile under Linux.  
-*  
-  
-*  
-mminstance and t1utils are two packages for handling Type1 fonts.  
-mminstance is for handling Adobe's  
-multiple master Type1 fonts.  
-t1utils is a suite of utilities for converting between the different  
-Type1 formats.  
-  
-*  
-  
-*  
-ttf2pt1  
-is a !TrueType to Type1 font converter. It is useful if you  
-have applications that require Type1 fonts.  
-*  
-  
-*  
-ttfps converts .ttf !TrueType font files  
-into Type42 files.  
-  
-*  
-  
-*  
-ttfutils  
-A package of utilities for handling !TrueType fonts. This  
-package requires ttf2pt1. Useful if not essential.  
-  
-*  
-  
-*  
-type1inst  
-is an essential package for installing Type1 fonts. It greatly  
-simplifies the installation.  
-*  
-  
-*  
-xfstt  
-is a !TrueType font server for Linux. It's useful, but xfs  
-is probably a better choice.  
-*  
-  
-*  
-xfsft The xfsft font server. Note that this is included  
-in xfs.  
-*  
-  
-*  
-x-tt is a font server designed to handle Korean and Japanese  
-fonts.  
-*  
-  
-  
-  
-  
-----  
-  
-!!12. Ethics and Licensing Issues Related to Type  
-  
-  
-Font licensing is a very contentious issue. While it is true  
-that there is a wealth of ''freely available'' fonts, the chances  
-are that the fonts are ``ripoffs'' in some sense, unless they come  
-with a license indicating otherwise.  
-The issue is made more confusing by intellectual property laws regarding  
-typefaces. Basically, in the USA, font ''files '' are protected  
-by copyright, but ''font renderings'' are not. In other words,  
-it's illegal to redistribute fonts, but it's perfectly legal to  
-``reverse-engineer'' them by printing them out on graph paper and  
-designing the curves to match the printout. Reverse engineered fonts  
-are typically cheap and freely available, but of poor quality.  
-These fonts, as well as pirated fonts are often distributed on  
-very cheap CDs containing huge amounts of fonts.  
-So it's not always easy to tell if a font is reverse engineered, or  
-simply pirated. This situation creates an enormous headache for  
-anyone hoping to package free fonts for Linux.  
-  
-  
-Perhaps one of the most offensive things about the nature of  
-font piracy is that it artificially debases the value of the  
-work that type designers do. Pirated fonts invariably are bundled  
-en masse onto these one zillion font CDs, with no due credit given  
-to the original designers. In contrast, what is commendable  
-about several  
-legitimate font foundries is that they credit their designers.  
-  
-  
-There are many differing opinions on this issue. See  
-typeright for  
-an explanation of the case in favour of intellectual property rights.  
-Also, see  
-Southern Software, Inc  
-for another opinion -- but don't buy any of their fonts! Their Type1 fonts  
-( poorly reverse-engineered Adobe fonts )  
-do not have AFMs, and are thus unusable.  
-  
-  
-  
-  
-  
-  
-The comp.fonts FAQ  
-also discusses the issues of fonts and intellectual property,  
-as does  
-Luc Devroye's homepage. These  
-references are somewhat less extreme in their views.  
-  
-  
-  
-  
-  
-  
-----  
-  
-!!13. References  
-  
-!!13.1 Font Information  
-  
-  
-  
-  
-  
-  
-*  
-Rod Smith's homepage  
-contains a wealth of information about using fonts and printers  
-with Applixware and Word Perfect.  
-*  
-  
-*  
-John !McLaughlin's page  
-discusses setting up fonts with Star Office  
-*  
-  
-*  
-Jim Land's homepage  
-contains a lot of links to sites on postscript and fonts.  
-*  
-  
-*  
-The comp.fonts FAQ  
-is the definitive font FAQ.  
-*  
-  
-*  
-Luc Devroye's homepage  
-Contains enough information about fonts and other things  
-to sink a ship. This guy designed a bunch of free fonts,  
-and his homepage has a lot of interesting links,  
-information and commentary.  
-*  
-  
-*  
-The Font Deuglification HOWTO  
-discusses !TrueType fonts under Linux. This  
-is the clear winner of the ``!TrueType'' HOWTOs.  
-An excellent  
-source of information.  
-*  
-  
-*  
-!TrueType Fonts in Debian mini-HOWTO  
-discusses installing !TrueType in Debian.  
-A must-read for Debian users.  
-Also worth reading if you have ''any'' distribution  
-that doesn't have the version of xfs with !TrueType  
-support.  
-*  
-  
-*  
-The (preliminary) True Type HOWTO  
--- an incomplete HOWTO dated June 1998. Included in this  
-list for completeness.  
-*  
-  
-*  
-!TrueType for XFree86 Mini-HOWTO  
--- a slightly dated HOWTO. Only applicable to Redhat 5.x  
-*  
-  
-  
-!!13.2 Postscript and Printing Information  
-  
-  
-  
-  
-  
-  
-*  
-Adobe's Postscript page  
-is the definitive site on the postscript standard.  
-*  
-  
-*  
-Ghostscript's home page  
-has a lot of information, and all the latest printer drivers.  
-*  
-  
-*  
-Jim Land's homepage  
-contains a lot of links to sites on postscript and fonts.  
-*  
-  
-*  
-Christopher Browne's Printing FAQ  
-  
-*  
-  
-----  
-  
-!!14. Glossary  
-  
-  
-  
-  
-  
-*__afm__  
-Stands for __Adobe Font Metric__. These files store information about  
-the width and spacing associated with the font, as opposed to information  
-about the font shape.  
-  
-*  
-  
-*__anti-aliasing__  
-also referred to as font smoothing is a technique  
-used to render fonts on low resolution devices ( such as a monitor ).  
-The problem with rendering fonts is that the fonts consist of outlines,  
-but the device renders in dots. The obvious way to render a font is  
-to color black any pixel inside the outline, and leave all other dots.  
-The problem with this is that it doesn't adequately address the pixels that  
-are on the outline. A smarter algorithm would be to color the boundary pixels  
-gray. Anti-aliasing essentially involves doing this.  
-  
-*  
-  
-*__bdf__ fonts are a variety of bit-mapped fonts that may be  
-used with X.  
-  
-*  
-  
-*__bitmap fonts__  
-These fonts are simply a collection of dots. Each character of  
-the font is stored as a dot matrix. Because of this, bitmap fonts  
-are device dependent, so you can't use the same bitmap fonts on  
-a screen and a printer. Examples of bitmap screen fonts include  
-.pcf and .bdf fonts used by X. Examples of printer bitmap  
-fonts include TeX's PK fonts.  
-  
-*  
-  
-*__didone__ see modern.  
-  
-*  
-  
-*__DPI__  
-Dots Per Inch. Monitors typically display at 75-100 DPI, while  
-modern printers vary from 300-1200 DPI  
-  
-*  
-  
-*__expert fonts__ are collections of additional characters  
-that supplement a font. They include small caps fonts, ornaments,  
-extra ligatures, and variable width digits. Many of Adobe's fonts  
-have expert fonts available.  
-  
-*  
-  
-*__font server__  
-a background program that makes fonts available to XFree86.  
-  
-*  
-  
-*__glyph__ A glyph is a fancy word for a shape. It is a component  
-that makes up an outline font. For example, the dot on the letter  
-``i'' is a glyph, as is the vertical line, as are the serifs. Glyphs  
-determine the shape of the font.  
-  
-*  
-  
-*__kerning__ In variable width fonts, different pairs of characters  
-are spaced differently. The font metric files store information regarding  
-spacing between pairs of characters, called __kerning pairs__.  
-  
-*  
-  
-*__ligature__ A ligature is a special character that is used  
-to represent a sequence of characters. This is best explained by example  
--- when the letter fi are rendered, the dot on the ``i'' collides  
-with the ``f'', and the serif on the top left of the i can also  
-collide with the horizontal stroke of the f. The fi ligature is a  
-single character that can be used in the place of a single f followed  
-by a single i. There are also ligatures for fl, ffi, and ffl.  
-Most fonts only include the fi and fl ligatures. The other ligatures  
-may be made available in an __expert font__.  
-  
-*  
-  
-*__metafont__  
-A graphics language used for creating fonts. Metafont has a lot of nice  
-features, the main one being that fonts created with metafont need not  
-just scale linearly. That is, a 17 point computer modern font  
-generated by metafont is not the same as a magnified 10 point  
-computer modern font. Prior to Adobe's multiple master technology,  
-metafont was unique with respect to having this feature.  
-Metafonts main advantage is that it produces high quality fonts.  
-The disadvantage is that generating bitmaps from the outline fonts  
-is slow, so they aren't feasible  
-for WYSIWYG publishing.  
-  
-*  
-  
-*__metric__ this stores information about how much space a font  
-takes up. A font metric is like a box that one can embed the font in. Font  
-metrics are essential for the purpose of laying out fonts on a page, while the  
-font shape itself is not. So typically, variable width fonts have metric  
-information as well as shape information. The metric also includes kerning  
-information.  
-  
-*  
-  
-*__modern__ fonts are fonts based on designs developed in the  
-19th century or later. The moderns have a solid appearance due to  
-their vertical stress. They tend to have more ``character'' or  
-``attitude'' than the old styles and transitionals, but still carry  
-a certain amount of dignity and formality.  
-They are not suited for writing long passages, but they are useful  
-for adding character to a piece of writing.  
-Bodoni is a notable modern typeface.  
-  
-*  
-  
-*__old style__ fonts are a traditional class of typeface.  
-The old style fonts are based on designs from as far back as the late  
-15th century. Old style fonts are great for writing long documents  
-( such as books ). While the old style fonts are designed in the  
-tradition of the earlier designers, some of them were designed  
-quite recently. Notably, the face __Goudy Old Style__ was  
-designed by Goudy in the early 20th century. Notable old style  
-faces include Goudy Old Style, Garamond, and Caslon.  
-  
-*  
-  
-*__pcf__ fonts are bit-mapped fonts used by X.  
-  
-*  
-  
-*__postscript__ is a programming language designed for page description.  
-Postscript was a trademark of it's inventor, adobe. However, it is also an  
-ISO standard. Postscript needs an  
-interpreter to render it. This can be done  
-via a program on the computer, such as ghostscript, or it can be interpreted  
-by some printers.  
-  
-*  
-  
-*__serif__ fonts are fonts with  
-little hooks ( called serifs ) on the ends of the font.  
-the serifs usually help make the font more readable.  
-However, serifs are quite  
-difficult to render on low resolution devices, especially at small font  
-sizes ( because they are a fine detail ), so it is often true  
-that at small sizes on low resolution devices, sans serif fonts  
-( such as Microsoft's Verdana ) prove more readable. Another issue  
-is that there are sans serif fonts ( like the moderns ) that are  
-not designed for writing long documents.  
-  
-*  
-  
-*__sans serif__ fonts are fonts without serifs ( sans is French  
-for ``without'' ). These fonts have a stark appearance, and are well  
-suited for writing headlines. While textbook typography mandates that  
-serif fonts be used just for headlines, they can have other uses.  
-There are sans serif fonts designed for readability as opposed to  
-impact.  
-Short punchy documents that are skimmed ( such as catalogues and  
-marketting brochures ) may use them, and recently, Microsoft have made  
-available the Verdana font which is designed for readability at small  
-sizes on low resolution devices.  
-Well known sans serif fonts include Lucida Sans, MS Comic Sans,  
-Avant Garde, Arial, Verdana, Century Gothic.  
-  
-*  
-  
-*__slab serif__ fonts are a certain class of font whose serifs  
-look like slabs ( eg flat lines or blocks ) and not hooks.  
-Slab serif fonts are __often__, but not always very readable.  
-Because the serifs are simple and strong, they give one the feeling  
-that they have been punched into the page.  
-Well known examples of slab serifs are Clarendon, New  
-Century Schoolbook, and Memphis.  
-  
-*  
-  
-*__transitional__ fonts are fonts that are based on more  
-recent designs than the old style fonts. many of the transitional  
-fonts have good readability. Notable transitionals include Baskerville,  
-and Times Roman.  
-  
-*  
-  
-*__Type1__ is a type of font designed by Adobe. These fonts are  
-well supported by almost all linux applications, because they have been  
-supported by the X server architecture and the postscript standard for  
-a long time. Postscript fonts are distributed in many different  
-formats. Typically, a UNIX postscript font is distributed as  
-an afm ( adobe font metric ) file, and an outline file, which is  
-usually a .pfb ( printer font binary ) or  
-.pfa ( printer font ascii ) file. The outline file contains  
-all the glyphs, while the metric file contains the metrics.  
-  
-*  
-  
-*__type3__ fonts are similar to Type1. The file extensions  
-are similar to Type1 fonts ( they are distributed as pfa and  
-afm files ), but they are not supported by X, and because  
-of this, there are not very many linux applications which support them.  
-  
-*  
-  
-----  
+Describe [HowToFontHOWTO] here.