What is the difference between CFF and TTF in OpenType fonts?

The difference between so-called CFF and TTF-flavored OpenType is best explained with a look at the digital history of fonts.

The OpenType format was formulated in 1996. By 2003, it began to replace two competing formats: the Type1 fonts, developed by Adobe and based on postscript, and the TrueType fonts, specified by Microsoft and Apple. The Type1 format’s outlines use the cubic Bézier curves. In addition, the font renderer is provided with important hinting information for the on-screen display – this takes place with rather coarse instructions and the actual work is left up to the font renderer. In contrast, the TrueType format uses quadratic Bézier curves and can give very detailed instructions to the renderer for hinting.

Because a conversion of both formats is possible, but can also cause problems, OpenType fonts still contain both formats. TTF stands for TrueTypeFont and indicates that the font data is the same as in the TrueType fonts. CFF stands for the Type1 font format. Strictly speaking, it refers to the Compact Font Format, which is used in the compression processes for the Type2 fonts.

In practice the difference only plays a very minor role, restricted to a few isolated cases. The days in which individual programs or operating systems could only use one or the other type of OpenType fonts are long gone. The assignment of formats to one genre or the other comes from that time, in which the word-processing products worked better with TrueType and graphics programs worked better with Type1.

Small differences still exist, all the same. For one, the cubic Bézier format of the Type1 fonts is more space-saving compared to the quadratic format of the TrueType fonts. Some kilobytes can be saved in large, elaborate fonts, which may represent an advantage on the Web. On the other hand, the more detailed hinting information of the TrueType fonts allows very extensive optimization for screen use. If you really put extra work into the TTF fonts, they can be easier to read on the screen.