D.7. Bitmap Management

D.7.1. The Tables EBLC and EBDT (Alias bloc and bdat)

Every effort was made so that TrueType fonts could contain bitmaps, together with—or instead of—vector contours. We have seen in Appendix A that a number of bitmap formats have appeared in the past 20 years and that some of them turned out to be better suited than others to certain situations. For instance, there are fonts with multiple sizes of glyphs, others with only one size, monospaced and proportional fonts, etc. The fact that ideographic fonts containing thousands, even tens of thousands of glyphs are monospace fonts is a decisive factor: when there are tens of thousands of glyphs, every single bit saved in the glyph descriptions is important; thus such fonts will not be described in the same way as alphabetic fonts, in which each letter may in principle have a different width.

TrueType had an ingenious idea: a font can be "multiformat"; i.e., we divide its glyphs into a number of blocks, and for each block we use the appropriate bitmap font format. If many glyphs have the same metrics, we store those metrics separately and declare that they apply to all of the glyphs in the block in question. If they have different metrics, those metrics will be stored with the glyphs.

Thus there are different sizes of bitmap fonts and, for each size, different font formats, which are applied to collections of glyphs in different blocks. TrueType provides two tables: one (EBLC) classifies the glyphs, the other ...

Get Fonts & Encodings now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.