Introduction |
|
1 | (2) |
|
|
3 | (14) |
|
|
3 | (4) |
|
|
7 | (4) |
|
|
11 | (3) |
|
|
14 | (1) |
|
Between Characters and Glyphs: the Problems of the Electronic Document |
|
|
15 | (2) |
|
The Structure of the Book and Ways to Use It |
|
|
17 | (8) |
|
|
23 | (2) |
|
|
25 | (2) |
|
|
27 | (26) |
|
|
29 | (1) |
|
|
29 | (2) |
|
|
31 | (2) |
|
|
33 | (2) |
|
|
35 | (7) |
|
ISO 8859-1 (Latin-1) and ISO 8859-15 (Latin-9) |
|
|
36 | (2) |
|
ISO 8859-2 (Latin-2) and ISO 8859-16 (Latin-10) |
|
|
38 | (1) |
|
ISO 8859-3 (Latin-3) and ISO 8859-9 (Latin-5) |
|
|
39 | (1) |
|
ISO 8859-4 (Latin-4), ISO 8859-10 (Latin-6), and ISO 8859-13 (Latin-7) |
|
|
40 | (1) |
|
|
41 | (1) |
|
|
42 | (1) |
|
|
42 | (3) |
|
|
45 | (2) |
|
|
47 | (1) |
|
|
48 | (3) |
|
|
51 | (2) |
|
Characters, glyphs, bytes: An introduction to Unicode |
|
|
53 | (42) |
|
Philosophical issues: characters and glyphs |
|
|
54 | (8) |
|
|
58 | (4) |
|
Technical issues: characters and bytes |
|
|
62 | (8) |
|
|
64 | (6) |
|
General organization of Unicode: planes and blocks |
|
|
70 | (25) |
|
The BMP (Basic Multilingual Plane) |
|
|
70 | (13) |
|
|
83 | (6) |
|
Scripts proposed for addition |
|
|
89 | (6) |
|
Properties of Unicode characters |
|
|
95 | (32) |
|
|
96 | (9) |
|
|
96 | (1) |
|
|
96 | (1) |
|
|
97 | (1) |
|
|
98 | (7) |
|
|
105 | (6) |
|
|
106 | (1) |
|
|
106 | (1) |
|
|
106 | (1) |
|
|
107 | (1) |
|
|
107 | (1) |
|
|
107 | (1) |
|
|
108 | (1) |
|
|
108 | (1) |
|
|
109 | (1) |
|
|
109 | (1) |
|
|
109 | (1) |
|
|
109 | (1) |
|
|
109 | (1) |
|
|
110 | (1) |
|
|
110 | (1) |
|
The Unicode 1 name and ISO's comments |
|
|
110 | (1) |
|
Properties that pertain to case |
|
|
111 | (3) |
|
|
111 | (1) |
|
|
112 | (1) |
|
Simple lowercase/uppercase/titlecase mappings |
|
|
112 | (1) |
|
Special lowercase/uppercase/titlecase mappings |
|
|
112 | (1) |
|
|
113 | (1) |
|
|
114 | (4) |
|
The Arabic and Syriac scripts |
|
|
114 | (2) |
|
Managing grapheme clusters |
|
|
116 | (2) |
|
|
118 | (1) |
|
|
119 | (1) |
|
|
120 | (7) |
|
Normalization, bidirectionality, and East Asian characters |
|
|
127 | (32) |
|
Decompositions and Normalizations |
|
|
127 | (6) |
|
|
127 | (3) |
|
Composition and Decomposition |
|
|
130 | (1) |
|
|
131 | (2) |
|
The Bidirectional Algorithm |
|
|
133 | (13) |
|
Typography in both directions |
|
|
134 | (4) |
|
Unicode and Bidirectionality |
|
|
138 | (4) |
|
The Algorithm, Step by Step |
|
|
142 | (4) |
|
|
146 | (13) |
|
Ideographs of Chinese Origin |
|
|
147 | (8) |
|
The Syllabic Korean Hangul Script |
|
|
155 | (4) |
|
|
159 | (28) |
|
Interactive Tools for Entering Unicode Characters |
|
|
160 | (4) |
|
|
160 | (1) |
|
|
161 | (2) |
|
|
163 | (1) |
|
|
164 | (19) |
|
Useful Concepts Related to Virtual Keyboards |
|
|
167 | (1) |
|
|
168 | (7) |
|
|
175 | (6) |
|
|
181 | (2) |
|
Conversion of Text from One Encoding to Another |
|
|
183 | (4) |
|
|
184 | (3) |
|
Font Management on the Macintosh |
|
|
187 | (22) |
|
The Situation under Mac OS 9 |
|
|
188 | (3) |
|
The situation under Mac OS X |
|
|
191 | (3) |
|
|
194 | (11) |
|
Tools for Verification and Maintenance |
|
|
194 | (2) |
|
ATM: the ``Smoother'' of Fonts |
|
|
196 | (3) |
|
ATR: classification of fonts by family |
|
|
199 | (1) |
|
|
200 | (4) |
|
|
204 | (1) |
|
Tools for Font Conversion |
|
|
205 | (4) |
|
|
205 | (1) |
|
|
206 | (1) |
|
FontFlasher, the ``Kobayashi Maru'' of Fonts |
|
|
207 | (2) |
|
Font Management under Windows |
|
|
209 | (12) |
|
|
212 | (7) |
|
The Extension of Font Properties |
|
|
212 | (1) |
|
Tools for Verification and Maintenance |
|
|
213 | (2) |
|
ATM: the ``Smoother'' of Fonts |
|
|
215 | (1) |
|
|
216 | (2) |
|
|
218 | (1) |
|
Tools for Font Conversion |
|
|
219 | (2) |
|
Font Management under X Window |
|
|
221 | (14) |
|
Special Characteristics of X Window |
|
|
221 | (1) |
|
Logical Description of a Font under X |
|
|
222 | (4) |
|
|
226 | (5) |
|
|
228 | (1) |
|
Installing PostScript Type 1 or TrueType Fonts |
|
|
229 | (2) |
|
Tools for Managing Fonts under X |
|
|
231 | (1) |
|
Tools for Converting Fonts under X |
|
|
232 | (3) |
|
|
232 | (1) |
|
|
233 | (1) |
|
|
233 | (1) |
|
Converting Bitmap Fonts under Unix |
|
|
233 | (2) |
|
Fonts in TEX and Ω, their installation and use |
|
|
235 | (80) |
|
|
235 | (39) |
|
|
236 | (4) |
|
The High Level: Basic LATEX Commands and NFSS |
|
|
240 | (19) |
|
The Low Level: TEX and DVI |
|
|
259 | (4) |
|
``Apres-TEX'': Confronting the Real World |
|
|
263 | (11) |
|
|
274 | (11) |
|
|
275 | (2) |
|
Basic Use of the Tool fontinst |
|
|
277 | (6) |
|
|
283 | (2) |
|
Customizing TEX Fonts for the User's Needs |
|
|
285 | (27) |
|
How to Configure a Virtual Font |
|
|
285 | (27) |
|
Conclusions and Glimpses at the Future |
|
|
312 | (3) |
|
|
315 | (52) |
|
|
318 | (14) |
|
|
318 | (1) |
|
|
319 | (13) |
|
Tools for Downloading Fonts from the Web |
|
|
332 | (13) |
|
|
333 | (3) |
|
Font Embedding, by Microsoft |
|
|
336 | (4) |
|
GlyphGate, by em2 Solutions |
|
|
340 | (5) |
|
|
345 | (20) |
|
Fundamental Concepts of XML |
|
|
345 | (5) |
|
|
350 | (1) |
|
|
351 | (2) |
|
|
353 | (2) |
|
|
355 | (10) |
|
|
365 | (2) |
|
The History and Classifications of Latin Typefaces |
|
|
367 | (74) |
|
The Typographical Big Bang of the Fifteenth Century, and the Fabulous Destiny of the Carolingian Script |
|
|
367 | (4) |
|
From Venice to Paris, by Way of Rome |
|
|
371 | (10) |
|
New Scripts Emerge in Germany |
|
|
381 | (1) |
|
The Wild Adventure of Textura in England |
|
|
382 | (2) |
|
|
384 | (2) |
|
England Takes the Lead in Typographic Innovation |
|
|
386 | (4) |
|
Didot and Bodoni Revolutionize Typefaces |
|
|
390 | (3) |
|
The German ``Sturm und Drang'' |
|
|
393 | (1) |
|
The Nineteenth Century, Era of Industrialization |
|
|
394 | (3) |
|
The Pre-war Period: Experimentation and a Return to Roots |
|
|
397 | (6) |
|
|
403 | (4) |
|
|
407 | (1) |
|
The Vox/ATypI Classification of Typefaces |
|
|
408 | (3) |
|
La classification Alessandrini des caracteres: le Codex 80 |
|
|
411 | (5) |
|
IBM's Classification of Fonts |
|
|
416 | (8) |
|
Class 0: No Classification |
|
|
416 | (1) |
|
Class 1: Old-Style Serifs |
|
|
416 | (2) |
|
Class 2: Transitional Serifs |
|
|
418 | (1) |
|
|
418 | (1) |
|
Class 4: Clarendon Serifs |
|
|
419 | (1) |
|
|
420 | (1) |
|
Class 7: Free-Form Serifs |
|
|
420 | (1) |
|
|
421 | (1) |
|
|
422 | (1) |
|
|
422 | (1) |
|
|
423 | (1) |
|
The Panose-1 Classification |
|
|
424 | (17) |
|
|
425 | (1) |
|
|
425 | (2) |
|
|
427 | (1) |
|
|
428 | (2) |
|
|
430 | (1) |
|
Parameter 6: Stroke Variation |
|
|
431 | (2) |
|
Parameter 7: Arm Style and Termination of Open Curves |
|
|
433 | (2) |
|
Parameter 8: Slant and Shape of the Letter |
|
|
435 | (1) |
|
Parameter 9: Midlines and Apexes |
|
|
436 | (2) |
|
Parameter 10: X-height and Behavior of Uppercase Letters Relative to Accents |
|
|
438 | (3) |
|
Editing and Creating Fonts |
|
|
441 | (64) |
|
Software for Editing/Creating Fonts |
|
|
442 | (2) |
|
|
444 | (2) |
|
|
446 | (42) |
|
|
446 | (6) |
|
Opening and Saving a Font |
|
|
452 | (2) |
|
The General-Information Window |
|
|
454 | (5) |
|
|
459 | (6) |
|
|
465 | (3) |
|
|
468 | (4) |
|
Driving FontLab with Python Scripts |
|
|
472 | (16) |
|
|
488 | (11) |
|
|
489 | (1) |
|
|
490 | (1) |
|
The General-Information Window |
|
|
491 | (1) |
|
|
492 | (3) |
|
|
495 | (2) |
|
What About Vertical Typesetting? |
|
|
497 | (1) |
|
|
498 | (1) |
|
|
499 | (1) |
|
|
500 | (1) |
|
|
501 | (4) |
|
Optimizing a rasterization |
|
|
505 | (44) |
|
|
507 | (11) |
|
|
507 | (5) |
|
Individual PostScript Hints |
|
|
512 | (6) |
|
|
518 | (31) |
|
Managing Instructions in FontLab |
|
|
520 | (9) |
|
Managing Instructions under VTT |
|
|
529 | (17) |
|
Managing Instructions under FontForge |
|
|
546 | (3) |
|
Enriching Fonts: Advanced Typography |
|
|
549 | (50) |
|
|
549 | (6) |
|
Managing OpenType Tables in FontLab |
|
|
555 | (14) |
|
Feature Definition Language |
|
|
556 | (9) |
|
|
565 | (4) |
|
Managing OpenType Tables in VOLT |
|
|
569 | (7) |
|
Managing OpenType Tables in FontForge |
|
|
576 | (10) |
|
|
577 | (2) |
|
Noncontextual Substitutions |
|
|
579 | (1) |
|
Noncontextual Positionings |
|
|
580 | (2) |
|
Contextual Substitutions and Positionings |
|
|
582 | (4) |
|
Managing AAT Tables in FontForge |
|
|
586 | (13) |
|
|
588 | (1) |
|
Managing AAT's Finite Automata in FontForge |
|
|
589 | (10) |
|
|
599 | (24) |
|
|
599 | (2) |
|
|
599 | (2) |
|
|
601 | (1) |
|
|
601 | (1) |
|
|
601 | (1) |
|
|
601 | (1) |
|
|
602 | (2) |
|
|
602 | (2) |
|
|
604 | (1) |
|
|
604 | (7) |
|
|
604 | (2) |
|
|
606 | (3) |
|
|
609 | (1) |
|
The SNF, PCF, and ABF Formats |
|
|
610 | (1) |
|
|
611 | (1) |
|
|
611 | (10) |
|
|
612 | (1) |
|
|
613 | (4) |
|
|
617 | (3) |
|
|
620 | (1) |
|
Other Less Common Bitmap Formats |
|
|
621 | (1) |
|
Whoever Can Do More Can Also Do Less |
|
|
621 | (2) |
|
B. TEX and ω Font Formats |
|
|
623 | (12) |
|
|
623 | (9) |
|
|
625 | (1) |
|
|
625 | (1) |
|
Kerning Pairs and Ligatures |
|
|
626 | (5) |
|
The Metric Properties of Glyphs |
|
|
631 | (1) |
|
|
632 | (1) |
|
|
633 | (1) |
|
|
634 | (1) |
|
C. PostScript Font Formats |
|
|
635 | (70) |
|
Introduction to the PostScript Language |
|
|
635 | (15) |
|
|
636 | (1) |
|
The System of Coordinates |
|
|
637 | (1) |
|
The current transformation matrix |
|
|
637 | (2) |
|
|
639 | (2) |
|
|
641 | (1) |
|
|
642 | (1) |
|
Managing the Stack, Tables, and Dictionaries |
|
|
643 | (2) |
|
Font Management and Typesetting |
|
|
645 | (1) |
|
The Image Model and the Graphics State |
|
|
646 | (1) |
|
Structured Comments (DSCs) |
|
|
647 | (3) |
|
|
650 | (5) |
|
|
655 | (22) |
|
Before We Begin: the Format of the File that Contains the Font |
|
|
656 | (1) |
|
|
657 | (2) |
|
Encodings for Type 1 Fonts |
|
|
659 | (2) |
|
|
661 | (4) |
|
|
665 | (1) |
|
|
666 | (6) |
|
|
672 | (5) |
|
|
677 | (5) |
|
Using Multiple Master Fonts in the PostScript Language |
|
|
681 | (1) |
|
|
681 | (1) |
|
|
682 | (2) |
|
|
684 | (3) |
|
|
684 | (2) |
|
|
686 | (1) |
|
CID Fonts (Types 9--11, 32) |
|
|
687 | (10) |
|
|
688 | (4) |
|
|
692 | (2) |
|
Rearrangement of a CID font |
|
|
694 | (2) |
|
The AFM File for the CID Font |
|
|
696 | (1) |
|
|
696 | (1) |
|
|
697 | (8) |
|
|
697 | (3) |
|
The charstrings of Type 2 |
|
|
700 | (5) |
|
D. The TrueType, OpenType, and AAT Font Formats |
|
|
705 | (174) |
|
TTX: TrueType Fonts Represented in XML |
|
|
706 | (3) |
|
|
709 | (1) |
|
General Overview of TrueType Tables |
|
|
709 | (4) |
|
The Kernel of the TrueType Tables |
|
|
713 | (15) |
|
|
713 | (1) |
|
|
714 | (2) |
|
|
716 | (1) |
|
|
717 | (2) |
|
|
719 | (1) |
|
|
720 | (2) |
|
|
722 | (4) |
|
|
726 | (2) |
|
The Tables That Pertain to TrueType-Style Glyph Descriptions |
|
|
728 | (3) |
|
|
728 | (1) |
|
|
728 | (2) |
|
The Tables fpgm, prep, and cvt |
|
|
730 | (1) |
|
The TrueType Tables That Affect PostScript-Style Glyph Descriptions |
|
|
731 | (1) |
|
|
731 | (1) |
|
|
731 | (1) |
|
|
732 | (8) |
|
The Tables EBLC and EBDT (Alias bloc and bdat) |
|
|
732 | (7) |
|
|
739 | (1) |
|
|
740 | (1) |
|
Some Other Optional Tables |
|
|
740 | (11) |
|
|
740 | (1) |
|
|
741 | (1) |
|
|
741 | (2) |
|
|
743 | (5) |
|
|
748 | (1) |
|
|
749 | (1) |
|
|
750 | (1) |
|
The OpenType Advanced Typographic Tables |
|
|
751 | (55) |
|
|
751 | (3) |
|
|
754 | (4) |
|
|
758 | (23) |
|
|
781 | (15) |
|
|
796 | (7) |
|
|
803 | (3) |
|
Predefined Features, Languages, and Scripts |
|
|
806 | (16) |
|
Predefined Languages and Scripts |
|
|
806 | (9) |
|
|
815 | (7) |
|
|
822 | (26) |
|
|
823 | (1) |
|
|
823 | (3) |
|
|
826 | (1) |
|
|
826 | (1) |
|
|
827 | (11) |
|
|
838 | (2) |
|
|
840 | (1) |
|
|
841 | (1) |
|
|
842 | (2) |
|
|
844 | (4) |
|
The AAT Tables for Font Variation |
|
|
848 | (8) |
|
|
848 | (2) |
|
|
850 | (1) |
|
|
851 | (4) |
|
|
855 | (1) |
|
AAT Tables with Finite Automata |
|
|
856 | (23) |
|
|
856 | (6) |
|
The morx Table (Formerly mort) |
|
|
862 | (10) |
|
|
872 | (7) |
|
|
879 | (26) |
|
|
881 | (2) |
|
Interpreter's Stack, Instruction Stream |
|
|
881 | (1) |
|
|
881 | (1) |
|
Freedom and Projection Vectors |
|
|
881 | (1) |
|
Table of Control Vectors and Storage Area |
|
|
882 | (1) |
|
Touched and Untouched Points |
|
|
882 | (1) |
|
Minimum Distance and Cut-In |
|
|
882 | (1) |
|
Twilight Zone and Zone Pointers |
|
|
882 | (1) |
|
|
883 | (9) |
|
Instructions for Managing the Stack and Storage Area |
|
|
883 | (1) |
|
Managing Vectors, Zones, and Reference Points |
|
|
884 | (1) |
|
|
885 | (4) |
|
|
889 | (1) |
|
Tests and Logical and Arithmetic Functions |
|
|
890 | (1) |
|
Definitions of Subroutines and New Instructions |
|
|
891 | (1) |
|
|
892 | (13) |
|
The `T' in the Font Courier |
|
|
892 | (7) |
|
The `O' from the Font Verdana |
|
|
899 | (6) |
|
F. METRFONT and Its Derivatives |
|
|
905 | (56) |
|
The METRFONT Programming Language |
|
|
906 | (29) |
|
|
906 | (2) |
|
The Basics: Drawing and Filling |
|
|
908 | (9) |
|
More Advanced Concepts: Pen Strokes and Parameterization |
|
|
917 | (13) |
|
Optimizing the Rasterization |
|
|
930 | (5) |
|
The Computer Modern Family of Fonts |
|
|
935 | (10) |
|
|
935 | (9) |
|
|
944 | (1) |
|
|
945 | (2) |
|
METATYPE1 and Antykwa Pottawskiego |
|
|
947 | (14) |
|
Installing and Using METATYPE1 |
|
|
947 | (1) |
|
Syntactic Differences from METAFONT |
|
|
948 | (8) |
|
|
956 | (5) |
|
|
961 | (30) |
|
|
961 | (1) |
|
|
961 | (30) |
|
Definition and Interesting Properties |
|
|
963 | (1) |
|
|
964 | (1) |
|
Subdivision of Bezier Curves |
|
|
965 | (26) |
General Index |
|
991 | (22) |
Index of Persons |
|
1013 | |