Edinburgh Castle
Fonts and Encodings
AuthorYannis Haralambous. Translated by P. Scott Horne
DateSeptember 2007
ReviewerDavid Thomas
Cover image for Fonts and Encodings

Fonts are the clothes that words wear and Encodings turn bytes into meaning. Fonts & Encodings landed on my desk rather surprising me by its size. At over 1,000 pages it's a comparable size to the last big 'fonty' tome I'd read from O'Reilly: CJKV Information Processing.

Initially I thought they'd sent me the wrong book: the colour scheme had turned from 'Web Design' blue into 'Text Processing' magenta somewhere between the picture in the catalogue and the first printing. A quick bit of googling turned up this explanation of O'Reilly's spine colour logic.

The book is broken down into four sections and seven appendixes. The appendixes are unusually large taking up well over a third of the book.

The first part takes us through encodings, starting with early encodings such as FIELDATA (no, I'd never heard of it either) then moving onto ASCII, EBCDIC, ISO 2022, 8859, Microsoft code pages and so on. It then moves onto a detailed look at Unicode, character properties and bidirectionality.

Part two covers font management on Mac OS, Windows and X Windows. As you may expect Mac OS is spoilt for choice. Windows comes out looking like a poor cousin. Both of them look like a doddle in comparison to the X Windows situation.

Part three takes us into TeX territory. We're introduced to Ω, an extension to TeX allowing use of Unicode, which the author co-developed.

Part four moves onto font classification and takes a look at the different methods available for classifying fonts. Here I was rubbing my eyes in disbelief in finding an actual description of PANOSE.

The appendixes add some very useful material, discussing bitmap fonts and the variety of different font formats in great detail. Finally it has a nice section describing Bézier curves.

While reading I noticed a number of errors. Most were minor. This first edition of the book was translated from Haralambous' French version, by P. Scott Horne, so I reckoned occasional errors were forgiveable. Initially these were of the spelling mistake variety but later on an occasional fact wouldn't ring true: does PostScript really use a 1,024-unit em square? I thought it was 1,000.


Leafing through the pages I find myself thinking that it's such a shame I didn't have this book all those years ago when we started writing my company's font engine.

It's a very dense book, but doesn't feel like it. The clear and meaningful descriptions of concepts and the amount of detail is excellent. I can't think of anything that could be added and, equally important, anything that should be taken away.

Well worth diving into if you're in any way involved in using fonts.

Table of contents

Fonts and Encodings

 1. Before Unicode
 2. Characters, glyphs, bytes: An introduction to Unicode
 3. Properties of Unicode characters
 4. Normalization, bidirectionality, and East Asian characters
 5. Using Unicode
 6. Font Management on the Macintosh
 7. Font Management under Windows
 8. Font Management under X Window
 9. Fonts in TEX and Ω, their installation and use
10. Fonts and Web Pages
11. The History and Classifications of Latin Typefaces
12. Editing and Creating Fonts
13. Optimizing a rasterization
14. Enriching Fonts: Advanced Typography
 A. Bitmap Font Formats
 B. TEX and Ω Font Formats
 C. PostScript Font Formats
 D. The TrueType, OpenType, and AAT Font Formats
 E. TrueType Instructions
 F. METAFONT and Its Derivatives
 G. Bézier Curves
faded separator

Page maintained via github.com/edinburgh-pm/edinburgh.pm