Previous Next
420
CHAPTER 5 Text
5.5.4 Type 3 Fonts
Type 3 fonts differ from the other fonts supported by PDF. A Type 3 font dictio-
nary defines the font; font dictionaries for other fonts simply contain information
about the font and refer to a separate font program for the actual glyph descrip-
tions. In Type 3 fonts, glyphs are defined by streams of PDF graphics operators.
These streams are associated with character names. A separate encoding entry
maps character codes to the appropriate character names for the glyphs.
Type 3 fonts are more flexible than Type 1 fonts because the glyph descriptions
may contain arbitrary PDF graphics operators. However, Type 3 fonts have no
hinting mechanism for improving output at small sizes or low resolutions. A Type
3 font dictionary contains the entries listed in Table 5.9.
TABLE 5.9 Entries in a Type 3 font dictionary
KEY TYPE VALUE
Type name (Required) The type of PDF object that this dictionary describes; must be
Font for a font dictionary.
Subtype name (Required) The type of font; must be Type3 for a Type 3 font.
Name name (Required in PDF 1.0; optional otherwise) See Table 5.8 on page 413.
FontBBox rectangle (Required) A rectangle (see Section 3.8.4, “Rectangles”) expressed in the
glyph coordinate system, specifying the font bounding box. This is the small-
est rectangle enclosing the shape that would result if all of the glyphs of the
font were placed with their origins coincident and then filled.
If all four elements of the rectangle are zero, no assumptions are made based
on the font bounding box. If any element is nonzero, it is essential that the
font bounding box be accurate. If any glyph’s marks fall outside this bounding
box, incorrect behavior may result.
FontMatrix array (Required) An array of six numbers specifying the font matrix, mapping
glyph space to text space (see Section 5.1.3, “Glyph Positioning and
Metrics”). A common practice is to define glyphs in terms of a 1000-unit
glyph coordinate system, in which case the font matrix is
[ 0.001 0 0 0.001 0 0 ].
Previous Next