May 1st, 2013 | by Stephanie Taylor | published in Uncategorized
A dramatically improved CFF rasterizer for FreeType
In our commitment to the open source community, Google, in cooperation with Adobe and the FreeType project, released the Adobe CFF engine, an advanced CFF rasterizer, into open source for beta test. This paves the way for FreeType-based platforms to provide users with richer and more beautiful reading experiences. The FreeType open source software powers font display on more than a billion devices. It is used for rendering on a variety of platforms including Android, Chrome OS, Linux, iOS, and many versions of Unix.
OpenType, an extension of TrueType, can describe glyph outlines in two ways — TrueType outline format and Compact Font Format (CFF). CFF is a descendant of the PostScript font format developed by Adobe. These formats use different approaches to specifying the glyphs (the images for each character) and the hints (the instructions on how to modify a glyph to look good at certain sizes). CFF fonts are capable of very high quality display but the technology places the burden for this display quality on the text rasterizer instead of on the font as is done in TrueType. The new Adobe CFF engine brings that high quality rasterizer support to FreeType.
Because many display devices have finite resolution limits, displaying text requires balancing many things: making the text readable, ensuring that no characters are too light or too heavy, consistent height and width, all while respecting the original typeface design. The tradeoffs required to make the text look good are more difficult to balance as the size of the text decreases. For languages like Japanese, where there are often many strokes per character, it is even more difficult and great care must be taken to avoid the character turning into an unreadable blob.
Text rasterization produced by the new Adobe CFF engine in FreeType is dramatically more faithful to the typeface design. The improvements include better stem widths and placement, fewer dropouts, dramatic reduction in the ‘blobbiness’ of Chinese, Japanese, and Korean, and more even visual weight. While all of this may sound somewhat technical, the advantages are not, and will benefit technical and non-technical users alike. These improvements lead to more beautiful looking text that is easier to read.