World Library  
Flag as Inappropriate
Email this Article


Article Id: WHEBN0000194776
Reproduction Date:

Title: OpenType  
Author: World Heritage Encyclopedia
Language: English
Subject: Meiryo, TrueType, Unicode, Palatino, Fonts on Macintosh
Collection: Adobe Systems, Digital Typography, Font Formats, Typesetting, Windows Architecture
Publisher: World Heritage Encyclopedia


Filename extension .otf, .ttf, .ttc
Internet media type application/font-sfnt[1][2]
Type code OTTO
Uniform Type Identifier (UTI) public.opentype-font
Developed by Microsoft & Adobe Systems
Latest release
(17 March 2015 (2015-03-17))
Type of format Font file
Extended from TrueType, PostScript fonts
Standard ISO/IEC 14496-22:2009[4]

OpenType is a format for scalable computer fonts. It was built on its predecessor TrueType, retaining TrueType's basic structure and adding many intricate data structures for prescribing typographic behavior. OpenType is a registered trademark of Microsoft Corporation.[5][6]

The specification germinated at Microsoft, with Adobe Systems also contributing by the time of the public announcement in 1996. The specification continues to be developed actively and is migrating to an open format.

Because of wide availability and typographic flexibility, including provisions for handling the diverse behaviors of all the world's writing systems, OpenType fonts are used commonly today on the major computer platforms.


  • History 1
    • Open Font Format 1.1
  • Description 2
  • Comparison to other formats 3
  • OpenType support 4
    • Basic Roman support 4.1
    • Extended language support 4.2
    • Advanced typography 4.3
  • OpenType Feature File (.fea) 5
  • Layout tags 6
    • Script tags 6.1
    • Language system tags 6.2
    • Feature tags 6.3
    • Baseline tags 6.4
    • Math 6.5
    • Color 6.6
  • SING gaiji solution 7
  • Serbian cyrillic solution 8
  • See also 9
  • References 10
  • External links 11


OpenType's origins date to Microsoft's attempt to license [7] Adobe joined Microsoft in those efforts in 1996, adding support for the glyph outline technology used in its Type 1 fonts.

These efforts were intended by Microsoft and Adobe to supersede both Apple's TrueType and Adobe's Type 1 ("PostScript") font formats. Needing a more expressive font format to handle 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 those formats' limitations. The name OpenType was chosen for the combined technologies, and the technology was 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 MPEG group, which had previously (in 2003) adopted OpenType 1.4 by reference for MPEG-4.[6][8][9][10] 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).[11] It is also sometimes referred to as "Open Font Format Specification" (OFFS).[6] The standard is technically equivalent to OpenType 1.4 specification, with appropriate language changes for ISO.[12] The second edition of the Open Font Format was published in 2009 (ISO/IEC 14496-22:2009) and it is declared as "technically equivalent" to the "OpenType font format specification".[4][13] It is a free, publicly available standard.[14]

By 2001 hundreds of OpenType fonts were on the market. Adobe finished converting their entire font library to OpenType toward the end of 2002. As of early 2005, 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.


OpenType uses the general sfnt structure of a TrueType font, but it adds several smartfont options that enhance the font's typographic and language support capabilities.

The glyph outline data in an OpenType font may be in one of two formats: either TrueType format outlines in a 'glyf' table, or Compact Font Format (CFF) outlines in a 'CFF ' table. (The table name 'CFF ' is four characters long, ending in a space character.) CFF outline data is based on the PostScript language Type 2 font format. However, the OpenType specification does not support the use of PostScript outlines in a TrueType Collection font file.

For many purposes, such as layout, it doesn't matter what the outline data format is, but for some purposes, such as rasterisation, it is significant. The OpenType standard does not specify the outline data format: rather, it accommodates any of several existing standards. Sometimes terms like "OpenType (PostScript flavor)", "Type 1 OpenType", "OpenType CFF", or "OpenType (TrueType flavor)" are used to indicate which outline format a particular OpenType font file contains.

OpenType has several distinctive characteristics:

  • Accommodates the Unicode character encoding (as well as others), so that it can support any writing script (or multiple scripts at once).
  • Accommodates up to 65,536 glyphs.
  • Advanced typographic "layout" features which prescribe positioning and replacement of rendered glyphs. Replacement features include ligatures; positioning features include kerning, mark placement, and Baseline (typography) specification.
  • Cross-platform font files, which can be used without modification on Mac OS, Windows and Unix systems.
  • If no additional glyphs or extensive typographic features are added, OpenType CFF fonts can be considerably smaller than their Type 1 counterparts.

Comparison to other formats

Compared with Apple Computer’s "GX Typography"—now called Apple Advanced Typography (AAT)—and with the SIL’s Graphite technology, OpenType is less flexible in typographic options, but superior in language-related options and support. Nevertheless, OpenType has been adopted much more widely than AAT and Graphite, despite AAT being the older technology.

The free software Graphite technology has been packaged with the desktop publishing and document editing software, LibreOffice (it is included in both the Windows and Linux distributions, but not with Mac, as AAT is already present).

From a font developer’s perspective, OpenType is, for many common situations, easier to develop for than AAT or Graphite. First, the simple declarative substitutions and positioning of OpenType are more readily understood than AAT’s more complex state tables or the Graphite description language that resembles C syntax. Second, Adobe’s strategy of licensing at no charge the source code developed for its own font development, AFDKO (Adobe Font Development Kit for OpenType), allowed third-party font editing applications such as FontLab and FontMaster to add support with relative ease. Although Adobe’s text-driven coding support is not as visual as Microsoft’s separate tool, VOLT (Visual OpenType Layout Tool), the integration with the tools being used to make the fonts has been well received.

Another difference is that an OpenType support framework (such as Microsoft’s Uniscribe) needs to provide a fair bit of knowledge about special language processing issues to handle (for example: Arabic). With AAT or Graphite, the font developer has to encapsulate all that expertise in the font. This means that AAT and Graphite can handle any arbitrary language, but that it requires more work and expertise from the font developers. On the other hand, OpenType fonts are easier to make, but can only support complex text layout if the application or operating system knows how to handle them.

Prior to supporting OpenType, Adobe promoted multiple master fonts and expert fonts for high-end typography. Multiple master fonts lacked the controls for alternate glyphs and languages provided by OpenType, but provided smooth transitions between styles within a type family. Expert fonts were intended as supplementary fonts, such that all the special characters that had no place in the Adobe Standard Encoding character set – ligatures, fractions, small capitals, etc. – were placed in the expert font instead. Usage in applications was tricky, with, for example, typing a Z causing the ffl ligature to be generated. In modern OpenType fonts all these glyphs are encoded with their Unicode indices and selection method (i.e. under what circumstances that glyph should be used).

OpenType support

Basic Roman support

OpenType support may be divided into several categories. Virtually all applications and most modern operating systems have basic Roman support and work with OpenType fonts just as well as other, older formats. What is of particular interest apart from basic Roman support is: extended language support through Unicode, support for complex writing scripts such as Arabic and the Indic languages, and advanced typographic support for Latin script languages such as English.

Amongst Microsoft's operating systems, OpenType TT fonts (.TTF) are backward compatible and therefore supported by all Windows versions starting with Windows 3.1. OpenType PS fonts (.OTF) are supported in all Windows versions starting with Windows 2000; Adobe Type Manager is required to be installed on Windows 95/98/NT/Me for basic Roman support (only) of OpenType PS fonts.

Extended language support

Extended language support via

  • The OpenType Specification (Microsoft)
  • Adobe – Fonts : OpenType
  • Information on Central European typography and fonts
  • Diacritics Project — All you need to design a font with correct accents
  • Bitstream Panorama: Line layout engine for worldwide text layout, multilanguage, multilingual fonts, and international complex scripts
  • D-Type Font Engine and Text Layout Module — Portable software components for OpenType font rasterization and text layout
  • Adobe Font Development Kit for OpenType (AFDKO)
  • Microsoft TrueType and OpenType Font Development Tools

External links

  1. ^
  2. ^
  3. ^
  4. ^ a b
  5. ^
  6. ^ a b c
  7. ^ Suitcase Type Foundry Information Guide Archived November 18, 2006 at the Wayback Machine
  8. ^
  9. ^
  10. ^
  11. ^
  12. ^
  13. ^
  14. ^
  15. ^
  16. ^
  17. ^
  18. ^
  19. ^ Christopher Slye – OpenType feature files, ATypI 2006 slides
  20. ^
  21. ^
  22. ^
  23. ^ (consent to non-chargeable online licence agreement required to download specification)
  24. ^
  25. ^
  26. ^
  27. ^
  28. ^
  29. ^
  30. ^ a b also at
  31. ^
  32. ^
  33. ^
  34. ^
  35. ^
  36. ^
  37. ^
  38. ^
  39. ^
  40. ^
  41. ^
  42. ^
  43. ^
  44. ^
  45. ^
  46. ^
  47. ^ a b c d
  48. ^
  49. ^ a b
  50. ^ a b
  51. ^
  52. ^
  53. ^
  54. ^
  55. ^
  56. ^
  57. ^
  58. ^ DeLaHunt, Jim. "SING: Adobe's New Gaiji Architecture". 26th Internationalization and Unicode Conference, September 2004. Retrieved 16 July 2009.


See also

Serbian/Macedonian cyrillic uses some language specific glyphs. In Unicode these are encoded in a single code point. OpenType allows showing these language-specific glyphs.

Specific Russian (top) and proper Serbian/Macedonian (bottom) letters.

Serbian cyrillic solution

The SING specification states that glyphlets are to travel with the document they are used in. That way documents are portable, leaving no danger of characters in the document that cannot be displayed. Because glyphlets are essentially OpenType fonts, standard font machinery can render them. The SING specification also describes an XML format that includes all the data necessary for reconstituting the glyphlet in binary form. A typical glyphlet might require one to two kilobytes to represent.

The SING (Smart INdependent Glyphlets)[57][58] technology that made its debut with Adobe's Creative Suite 2 allows for the creation of glyphs, each packaged as a standalone font, after a fashion. Such a packaged glyph is called a glyphlet. The format, which Adobe has made public, is based on OpenType. The package consists of the glyph outline in TrueType or CFF (PostScript style outlines) form; standard OpenType tables declaring the glyph's metrics and behavior in composition; and metadata, extra information included for identifying the glyphlet, its ownership, and perhaps pronunciation or linguistic categorization. SING glyphlets can be created using Fontlab's SigMaker3 application.

Several ways to deal with gaiji have been devised. Solutions that treat them as characters usually assign arbitrary Unicode values to them in the Private Use Areas (PUA). Such characters cannot be used outside the environment in which the association of the private Unicode to the glyph shape is known. Documents based on them are not portable. Other installations treat gaiji as graphics. This can be cumbersome because text layout and composition cannot apply to graphics. They cannot be searched for. Often their rendering looks different from surrounding characters because the machinery for rendering graphics usually is different from the machinery for rendering glyphs from fonts.

Another aspect of the gaiji problem is that of variant glyphs for certain characters. Often certain characters have been written differently over periods of time. It is not unusual for place names or personal family names to use a historical form of a character. Thus it is possible for an end user using standard fonts to be left unable to spell correctly either their own name or the name of the place where they live.

In 2005, Adobe shipped a new technology in their Creative Suite applications bundle that offers a solution for "gaiji" (外字, Japanese for "outside character"). Ideographic writing scripts such as Chinese and Japanese do not have fixed collections of characters. They use thousands of glyphs commonly and tens of thousands less commonly. Not all glyphs ever invented and used in Far Eastern literature have even been catalogued. A typical font might contain 8,000 to 15,000 of the most commonly used glyphs. From time to time, though, an author needs a glyph not present in the font of choice. Such missing characters are known in Japan as gaiji, and they often disrupt work.

SING gaiji solution

Mozilla and Adobe have proposed adding full SVG support (including color but also animations) to OpenType fonts. Support is present since Firefox 26.[49] Two new OpenType tables are proposed for this purpose: one called SVG and one called CPAL.[56]

In Windows 8.1 Microsoft also added color support to fonts, first implemented in the Segoe UI Emoji font.[47][51][52][53] Microsoft's implementation however relies entirely on vector graphics:[47][54] two new OpenType tables were added in Microsoft's implementation: the COLR table allows layered glyphs and the CPAL (“Color Palette”) actually defines the colors for the layers. The multi-layer approach allows a backwards compatible implementation as well as varying the rendering depending on the color context surrounding the glyphs.[47] Microsoft has announced their intention to submit their color extension for standardization thorough ISO/IEC 14496-22.[55] According to Adam Twardoch: "At TypeCon [2013], Greg Hitchcock clarified the envisioned roles of the palettes: first palette is used by default for “dark on light” color situations while second palette is intended for use in “light on dark” situations. Additional palettes should be selectable by the user."[50]

Apple added a color extension in Mac OS X Lion (and also to iOS 4+) for the purpose of implementing colored Emoji fonts. The codepoints for these come from Unicode 6.0. In Apple's implementation, the fonts were extended with colored PNG images using the AAT-specific ’sbix’ table.[46][47][48] Google has made a similar proposal but using a pair of CBDT/CBLC tables.[49] The Google version is implemented in FreeType 2.5.[50]


As of 2010, the set of fonts that supported OpenType math was fairly limited. Besides Cambria Math, three free fonts were available: Asana-Math, Neo Euler, and XITS.[38] More recently the Latin Modern and TeX Gyre fonts (a "LM-ization" of the standard PostScript fonts[39]) have also gained support for OpenType math.[40][41][42][43] As of 2014 the number of OpenType math fonts is still fairly limited.[44] A more up-to-date list is maintained on Mozilla's web site.[45]

The Gecko rendering engine used by the Firefox web browser also supports some OpenType math features in its MathML implementation.[36][37]

Besides Microsoft products, XeTeX and LuaTeX also have some level of support for these tables; support is more limited in XeTeX because it uses the traditional TeX math rendering engine (thus is cannot fully use some of the new features in OpenType math that extend TeX), while LuaTeX takes a more flexible approach by changing some of the internals of TeX's math rendering; in the words of Ulrik Vieth (2009): "More precisely, while XeTeX only provides access to the OpenType parameters as additional \fontdimens, LuaTeX uses an internal data structure based on the combined set of OpenType and TeX parameters, making it possible to supply missing values which are not supported in either OpenType math fonts or traditional TeX math fonts."[30] In 2013, XeTeX also gained support for cut-ins.[35]

A set of tables that mirrors TeX math font metrics relatively closely was added by Microsoft initially to Cambria Math for supporting their new math editing and rendering engine in Office 2007 and later.[24][25] This extension was added to the ISO standard (ISO/IEC CD 14496-22 3rd edition) in April 2014.[26] Additional (usage) details are available in the Unicode technical report 25[27] and technical note 28.[28] Some of the new technical features (not present in TeX), such as "cut-ins" (which allows kerning of subscripts and subscripts relative to their bases[29]) and stretch stacks[30] have been patented by Microsoft.[31][32][33] Windows 8 supports OpenType math outside MS Office applications via the RichEdit 8.0 component.[34]


Baseline Tag HorizAxis VertAxis
'hang' horizontal line from which the syllabograms seem to hang in the Tibetan script The same line in Tibetan vertical writing mode.
'icfb' Ideographic character face bottom edge baseline. Ideographic character face left edge baseline.
'icft' Ideographic character face top edge baseline. Ideographic character face right edge baseline.
'ideo' Ideographic em-box bottom edge baseline. Ideographic em-box left edge baseline.
'idtp' Ideographic em-box top edge baseline. Ideographic em-box right edge baseline.
'math' The baseline about which mathematical characters are centered. The baseline about which mathematical characters are centered in vertical writing mode.
'romn' The baseline used by simple alphabetic scripts such as Latin, Cyrillic and Greek. The alphabetic baseline for characters rotated 90 degrees clockwise for vertical writing mode.
Baseline tags have a specific meaning when used in the horizontal writing direction (used in the 'BASE' table's HorizAxis table), vertical writing direction (used in the 'BASE' table's VertAxis table), or both.

Baseline tags

A list of OpenType features with expanded descriptions is given list of typographic features.

Feature tags

Language system tags identify the language systems supported in an OpenType typeface. Examples include ARA for Arabic, ESP for Spanish, HYE for Armenian, etc. In general, the codes are not the same as ISO 639-2 codes.

Language system tags

Script tags identify the scripts (writing systems) represented in an OpenType typeface. Each tag corresponds to contiguous character code ranges in Unicode. A script tag can consist of 4 or fewer lowercase letters, such as arab for the Arabic alphabet, cyrl for the Cyrillic script and latn for the Latin alphabet. The math script tag, added by Microsoft for Cambria Math, has been added to the specification.[22][23]

Script tags

Operating system and application support for layout tags varies widely.

OpenType Layout tags are 4-byte character strings that identify the scripts, language systems, features and baselines in an OpenType Layout font. Microsoft's Layout tag registry establishes conventions for naming and using these tags. OpenType features are created by using the tags in creating feature scripts that describe how characters are to be manipulated to make the desired feature. These feature scripts can be created and incorporated into OpenType fonts by advanced font editors such as FontForge.

Layout tags

[21]) using .otf or .ttf extension. These files can be compiled into the binary font container (.fea a text specification format for feature files, which typically have a name ending in a [20] Consequently, Adobe standardized[19] OpenType features are tedious to define using a GUI.

OpenType Feature File (.fea)

In pango (calling HarfBuzz) or Qt. The XeTeX and LuaTeX systems allow TeX documents to use OpenType fonts, along with most of their typographic features. Linux version of LibreOffice v. 4.1 (and newer) supports many OpenType typography features, because it began to use more sophisticated HarfBuzz text shaping library.[18]

Bitstream Panorama, a line layout and text composition engine from Bitstream Inc., provides complete OpenType support for compact and standard Asian fonts, Arabic, Hebrew, Indic, Thai and over 50 other worldwide languages. The application supports key OpenType tables required for line layout, such as BASE, glyph definition (GDEF), glyph positioning (GPOS), and glyph substitution (GSUB). Panorama also offers complete support for advanced typography features, such as ligatures, swashes, small caps, ornaments, ordinals, superiors, old style, kerning, fractions, etc.

On Mac OS X, AAT-supporting applications running on Mac OS X 10.4 and later, including TextEdit and Keynote, get considerable OpenType support. Apple's support for OpenType in Mac OS X 10.4 included most advanced typographic features necessary for Latin script languages, such as small caps, oldstyle figures, and various sorts of ligatures, but it did not yet support contextual alternates, positional forms, nor glyph reordering as handled by Microsoft's Uniscribe library on Windows. Thus, Mac OS X 10.4 did not offer support for Arabic or Indic scripts via OpenType (though such scripts are fully supported by existing AAT fonts). Mac OS X 10.5 has improved support for OpenType and supports Arabic OpenType fonts. Gradually, the OpenType typography support has improved on newer Mac OS X versions (e.g. Mac OS X 10.10 can handle much better long contextual glyph substitutions).

Windows 7 introduced DirectWrite, a hardware accelerated native DirectX API for text rendering with support for multi-format text, resolution-independent outline fonts, ClearType, advanced OpenType typography features, full Unicode text, layout and language support and low-level glyph rendering APIs.[17]

As of 2009, popular Windows word processors did not support advanced OpenType typography features. Advanced typography features are implemented only in high-end desktop publishing software. The text engine from Windows Presentation Foundation, which is a managed code implementation of OpenType, is the first Windows API to expose OpenType features to software developers, supporting both OpenType TrueType, and OpenType CFF (Compact Font Format) fonts. It supports advanced typographic features such as ligatures, old-style numerals, swash variants, fractions, superscript and subscript, small capitalization, glyph substitution, multiple baselines, contextual and stylistic alternate character forms, kerning, line-level justification, ruby characters etc. WPF applications automatically gain support for advanced typography features. OpenType ligatures are accessible in Microsoft Office Word 2010.[16]

Advanced typographic support for Latin script languages first appeared in Adobe applications such as Adobe InDesign, Adobe Photoshop and Adobe Illustrator. QuarkXPress 6.5 and below were not Unicode compliant. Hence text in these versions of QuarkXPress that contains anything other than WinANSI/MacRoman characters will not display correctly in an OpenType font (nor in other Unicode font formats, for that matter). However, in QuarkXPress 7, Quark offered support similar to Adobe's. Corel's CorelDRAW introduced support for OpenType typographic features in version X6. Mellel, a Mac OS X-only word processor from Redlers, claims parity in typographic features with InDesign, but also extends the support to right-to-left scripts; so does the Classical Text Editor, a specialized word processor developed at the Austrian Academy of Sciences.

Advanced typography

OpenType support for complex written scripts has so far mainly appeared in Microsoft applications in Microsoft Office, such as Microsoft Word and Microsoft Publisher. Adobe InDesign provides extensive OpenType capability in Japanese but does not directly support Middle Eastern or Indic scripts— though a separate version of InDesign is available that supports Middle Eastern scripts such as Arabic and Hebrew. Undocumented functionality in many Adobe Creative Suite 4 applications, including InDesign, Photoshop and Illustrator, enables Middle Eastern, Indic and other languages, but is not officially supported by Adobe, and requires third-party plug-ins to provide a user interface for the features.

etc.). [15]

This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.

Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.