OpenType's origins date to Microsoft's attempt to license
Apple's advanced typography technology
GX Typography in the early 1990s. Those negotiations failed, motivating Microsoft to forge ahead with its own technology, dubbed "TrueType Open" in 1994. Adobe joined Microsoft in those efforts in 1996, adding support for the
glyph outline technology used in its Type 1 fonts. The joint effort intended to supersede both Apple's TrueType and Adobe's
PostScript Type 1 font format, and to create a more expressive system that handles fine typography and the complex behavior of many of the world's writing systems. The two companies combined the underlying technologies of both formats and added new extensions intended to address their limitations. The name OpenType was chosen for the joint technology, which they announced later that year.
Open Font Format Adobe and Microsoft continued to develop and refine OpenType over the next decade. Then, in late 2005, OpenType began migrating to an open standard under the
International Organization for Standardization (ISO) within the
MPEG group, which had previously (in 2003) adopted OpenType 1.4 by reference for
MPEG-4. Adoption of the new standard reached formal approval in March 2007 as ISO Standard
ISO/IEC 14496-22 (MPEG-4 Part 22) called
Open Font Format (OFF, not to be confused with
Web Open Font Format), sometimes referred to as "Open Font Format Specification" (OFFS). The second edition of the OFF was published in 2009 (ISO/IEC 14496-22:2009) and was declared "technically equivalent" to the "OpenType font format specification". Since then, OFF and OpenType specifications have been maintained in sync. OFF is a free, publicly available standard. By 2001 hundreds of OpenType fonts were on the market. Adobe finished converting their entire font library to OpenType toward the end of 2002. , around 10,000 OpenType fonts had become available, with the Adobe library comprising about a third of the total. By 2006, every major
font foundry and many minor ones were developing fonts in OpenType format.
Unicode Variation Sequences Unicode version 3.2 (published in 2002) introduced
variation selectors as an encoding mechanism to represent particular glyph forms for characters. Unicode did not, however, specify how text renderers should support these sequences. In late 2007, variation sequences for the Adobe-Japan1 collection were registered in the Unicode Ideographic Database, leading to a real need for an OpenType solution. This resulted in development of the cmap subtable Format 14, which was introduced in OpenType version 1.5.
Color fonts Unicode version 6.0 introduced
emoji encoded as characters into Unicode in October 2010. Several companies quickly acted to add support for Unicode emoji in their products. Since Unicode emoji are handled as text, and since color is an essential aspect of the emoji experience, this led to a need to create mechanisms for displaying multicolor glyphs. Apple, Google and Microsoft independently developed different color-font solutions for use in
OS X,
iOS,
Android and
Windows. • OpenType and OFF already had support for monochrome bitmap glyph, so Google proposed that OFF be extended to allow for color bitmaps. Apple adopted this approach but declined to participate in extending the ISO standard. As a result, Apple added the sbix table to their TrueType format in OS X 10.7, while Google proposed addition of the CBDT and CBLC tables to OFF. • Microsoft adopted a different approach than color bitmaps. Noting existing practice on the Web of layering glyphs of different color on top of one another to create multi-colored elements such as icons, Microsoft proposed a new COLR table to map a glyph into a set of glyphs that are layered, and a CPAL table to define the colors. • Adobe and Mozilla proposed adding a new SVG table that can represent multi-color glyphs using
Scalable Vector Graphics. These proposals were all incorporated into the third edition of OFF (ISO/IEC 14496-22:2015). Microsoft added CBDT, CBLC, COLR, CPAL, and SVG tables to OpenType version 1.7, OpenType 1.9 introduced a second version of the COLR table that adds additional graphics capabilities. These enhancements give the COLR table all of the graphic capabilities of the SVG table except stroking. They also add compositing and blending modes, support for which is considered optional for the SVG table (as these are implemented in SVG as filter effects). In addition, the enhancements to the COLR table are integrated with OpenType Font Variations, which is not possible with the SVG table. The enhanced COLR table is supported in the
Chromium browser engine as of version 98.
Collections Since at least version 1.4, the OpenType specification had supported "TrueType Collections", a feature of the format that allows multiple fonts to be stored in a single file. Such a format is useful for distributing an entire
typeface (font family) in just one file. By combining related fonts into a single file, font tables that are identical can be shared, thereby allowing for more efficient storage. Also, individual fonts have a glyph-count limit of 65,535 glyphs, and a Collection file provides a "gap mode" mechanism for overcoming this limit in a single font file. (Each font within the collection still has the 65,535 limit, however.) A TrueType Collection file would typically have a file extension of ".ttc". However, the specification only described collection files being used in conjunction with glyphs that are represented as TrueType outlines or as bitmaps. The potential existed to provide the same storage and glyph-count benefits to fonts that use CFF-format glyphs (.otf extension). But the specification did not explicitly allow for that. In 2014, Adobe announced the creation of OpenType Collections (OTCs), a Collection font file that combines fonts that use CFF-format glyphs. This provided significant storage benefits for
CJK fonts that Adobe and Google were jointly developing. For example, the
Noto fonts CJK OTC is ~10 MB smaller than the sum of the four separate OTFs of which it is composed. The use of a Collection also allowed for combining a very large number of glyphs into a single file, as would be needed for a pan-CJK font. Explicit support for Collections with CFF-format glyphs was incorporated into the OpenType specification in version 1.8. OpenType version 1.8 introduced "OpenType Font Variations", which adds mechanisms that allow a single font to support many design variations. Fonts that use these mechanisms are commonly referred to as "
Variable fonts". OpenType Font Variations re-introduces techniques that were previously developed by Apple in
TrueType GX, and by Adobe in
Multiple Master fonts. The common idea of these formats is that a single font includes data to describe multiple variations of a glyph outline (sometimes referred to as "masters"), and that at text-display time, the font rasterizer is able to interpolate or "blend" these variations to derive a continuous range of additional outline variations. The concept of fully parametric fonts had been explored in a more general way by
Donald E. Knuth in the
METAFONT system, introduced in 1978. That system and its successors were never widely adopted by professional type designers or commercial software systems. TrueType GX and Multiple Master formats, OpenType Font Variations' direct predecessors, were introduced in the 1990s, but were not widely adopted, either. Adobe later abandoned support for the Multiple Master format. By 2016, however, the industry landscape had changed in several respects. In particular, emergence of Web fonts and of mobile devices had created interest in
responsive design and in seeking ways to deliver more type variants in a size-efficient format. Also, whereas the 1990s was an era of aggressive competition in font technology, often referred to as "the font wars", OpenType Font Variations was developed in a collaborative manner involving several major vendors. Font Variations is integrated into OpenType 1.8 in a comprehensive manner, allowing most previously-existing capabilities to be used in combination with variations. In particular, variations are supported for both TrueType or CFF glyph outlines, for TrueType hinting, and also for the OpenType Layout mechanisms. The only parts of OpenType for which variations are not supported but might potentially be useful are the 'SVG ' table for color glyphs, and the MATH table for layout of mathematical formulas. The 'SVG ' table uses embedded XML documents, and no enhancement for variation of graphic elements within the SVG documents has been proposed. However, enhancement to the COLR table in OpenType 1.9 has provided a vector format for color glyphs with support for variations. OpenType 1.8 made use of tables originally defined by Apple for TrueType GX (the avar, cvar, fvar and gvar tables). It also introduced several new tables, including a new table for version 2 of the CFF format (CFF2), and other new tables or additions to existing tables to integrate variations into other parts of the font format (the HVAR, MVAR, STAT and VVAR tables; additions to the BASE, GDEF and name tables). ==Description==