OpenType specification change log (OpenType 1.8)
Version 1.8 — Released September 2016
Summary of Changes:
- avar.htm
- Axis variations table added.
- base.htm
- Changed single Fixed version field to USHORT major/minor versions.
- Changed int16/uint16 to SHORT/USHORT.
- Added version 1.1 header.
- Added section on OpenType Font Variations.
- Revised description of BaseCoord Format 3 to accommodate Font Variations.
- Added section for the Item Variation Store table.
- cff2.htm
- Compact Font Format 2 table added.
- cff2charstr.htm
- CFF 2 Charstring Format added.
- chapter2.htm
- Changed int16/uint16 to SHORT/USHORT.
- Added section on OpenType Font Variations.
- Added VariationIndex table.
- Added FeatureVariations table and constituent formats.
- cvar.htm
- CVT variations table added.
- default.htm
- Added chapters: OpenType Font Variations Overview, OpenType Font Variations Common Table Formats, The CFF 2 Charstring Format, Adobe Technical Note #5209.
- Reordered entries between “Specification” and “Appendices” sections.
- Removed mention of Microsoft Word documents. (Post-release update, September 2018.)
- featurelist.htm
- Added Required Variation Alternates feature.
- Added Vertical Alternates for Rotation feature.
- features_fj.htm
- Revised feature descriptions for 'fina', 'halt', 'init', 'isol' (similar to ISO/IEC 14496-22:2015 Draft Amendment 2).
- Marked the 'hngl' feature as deprecated (following ISO/IEC 14496-22:2015 Draft Amendment 2).
- features_ko.htm
- Revised feature descriptions for 'medi' (similar to ISO/IEC 14496-22:2015 Draft Amendment 2).
- features_pt.htm
- Added Required Variation Alternates feature.
- features_uz.htm
- Revised feature description for 'vert' (similar to ISO/IEC 14496-22:2015 Amendment 1).
- Added Vertical Alternates for Rotation feature (similar to ISO/IEC 14496-22:2015 Amendment 1).
- Revised feature description for 'vhal' (similar to ISO/IEC 14496-22:2015 Draft Amendement 2).
- fvar.htm
- Font variations table added.
- gasp.htm
- Added section on OpenType Font Variations.
- gdef.htm
- Added missing sections describing Mark Attachment Class and Mark Glyph Sets tables.
- Added sections for the Item Variation Store table.
- Changed single Fixed version field to USHORT major/minor versions.
- Changed int16/uint16 to SHORT/USHORT.
- Added version 1.2 header.
- Revised description of CaretValue Format 3 to accommodate Font Variations.
- glyf.htm
- Revised description of WE_HAVE_A_TWO_BY_TWO flag (following ISO/IEC 14496-22:2015 Amendment 1).
- In table of composite flags, revised descriptions for OVERLAP_COMPOUND, SCALED_COMPONENT_OFFSET and UNSCALED_COMPONENT_OFFSET (similar to changes in ISO/IEC 14496-22:2015 Amendment 1).
- gpos.htm
- Changed single Fixed version field to USHORT major/minor versions.
- Changed int16/uint16 to SHORT/USHORT.
- Added section on OpenType Font Variations.
- Added version 1.1 header and FeatureVariations table.
- Revsed descriptions of ValueRecord and ValueFormat to allow for VariationIndex table.
- Revised reserved mask for ValueFormat to 0xFF00.
- Revised description of Anchor format 3 to allow for VariationIndex table.
- grstate.doc
- Content ported into Web page: tt_graphics_state.htm. (Post-release update, September 2018.)
- gsub.htm
- Changed single Fixed version field to USHORT major/minor versions.
- Changed int16/uint16 to SHORT/USHORT.
- Added section on OpenType Font Variations.
- Added version 1.1 header and FeatureVariations table.
- gvar.htm
- Glyph variations table added.
- head.htm
- Changed single Fixed version field to USHORT major/minor versions.
- Changed description of checkSumAdjustment (following ISO/IEC 14496-22:2015 Amendment 1).
- Revised description of flags bits 1, 5 and 6 – 10.
- Added note about variable fonts.
- hhea.htm
- Changed single Fixed version field to USHORT major/minor versions.
- Added section on OpenType Font Variations.
- hvar.htm
- Horizontal metrics variations table added.
- instgly.doc
- Content ported into Web page: tt_instructing_glyphs.htm. (Post-release update, September 2018.)
- jstf.htm
- Changed single Fixed version field to USHORT major/minor versions.
- Changed int16/uint16 to SHORT/USHORT.
- Added section and other remarks on OpenType Font Variations.
- languagetags.htm
- Revised introductory text regarding tag syntax.
- Revised ISO 639 values for QIN, SYR.
- Added tags: SYRE, SYRJ, SYRN.
- merg.htm
- Merge table added.
- meta.htm
- Added meta table.
- mvar.htm
- Metrics variations table added.
- name.htm
- Changed description of name ID 6 (following ISO/IEC 14496-22:2015 Amendment 1).
- Added new name ID 25.
- os2.htm
- Added comment for usWeightClass regarding variable fonts and 'wght' style axis.
- Added comment for usWidthClass regarding variable fonts and 'wdth' style axis.
- Corrected misspelling of field name (following ISO/IEC 14496-22:2015 Amendment 1).
- Added section on OpenType Font Variations.
- Added note regarding fsSelection bit 15.
- os2ver0.htm
- Corrected misspelling of field name (following ISO/IEC 14496-22:2015 Amendment 1).
- Added footer.
- os2ver1.htm
- Corrected misspelling of field name (following ISO/IEC 14496-22:2015 Amendment 1).
- Added footer.
- os2ver2.htm
- Corrected misspelling of field name (following ISO/IEC 14496-22:2015 Amendment 1).
- os2ver3.htm
- Corrected misspelling of field name (following ISO/IEC 14496-22:2015 Amendment 1).
- os2ver4.htm
- Corrected misspelling of field name.
- otff.htm
- Changed sfntVersion to ULONG, and clarified discussion of version numbers.
- Revised description of font collections (similar to changes in ISO/IEC 14496-22:2015 Amendment 1).
- Added new tables (CFF2, avar, cvar, gvar, gvar, HVAR, MVAR, VVAR, STAT) and notes on OpenType Font Variations.
- Removed obsolete reference to ATM.
- otvarcommonformats.htm
- Added OpenType Font Variations Common Table Formats chapter.
- otvaroverview.htm
- Added OpenType Font Variations Overview chapter.
- post.htm
- Revised descriptions of Versions 1.0, 2.0 and 3.0 to allow for use in fonts with CFF 2 outlines.
- Added section on OpenType Font Variations.
- recom.htm
- Added note in Filenames recommendations about naming of files for variable fonts.
- Removed section on first four glyphs (following ISO/IEC 14496-22:2015 Amendment 1).
- Revised title and content of section on .notdef (similar to ISO/IEC 14496-22:2015 Amendment 1).
- Added notes in 'name' table recommendations about naming of variable fonts.
- Revised 'name' table recommendation for name ID 6 (increased length limit from 63 to 127).
- Revised 'OS/2' table recommendation regarding PANOSE value (following ISO/IEC 14496-22:2015 Amendment 1), and fixed external link.
- Revised symbol-font recommendations regarding PANOSE value (following ISO/IEC 14496-22:2015 Amendment 1).
- Added section on stroke reduction in variable fonts.
- Corrected link to PANOSE specification. (Post-release update, September 2018.)
- sbix.htm
- Standard bitmap graphics table added.
- stat.htm
- Style attributes table added.
- svg.htm
- Added requirement that SVG documents must be encoded in UTF-8 (following ISO/IEC 14496-22:2015 Draft Amendment 2).
- Added clarification for rendering multiple glyphs from a shared SVG document.
- Removed ‘context-’ properties from default stylesheet applied to SVG documents.
- Revised language for handling different SVG versions (following ISO/IEC 14496-22:2015 Draft Amendment 2).
- Added SVG Glyph Examples section (following ISO/IEC 14496-22:2015 Draft Amendment 2).
- Minor typo corrections and clarifications.
- tt_instructions.htm
- Corrected error in description of "logical OR" inadvertently added when porting from Word documents. (Post-release erratum.)
- Removed incorrect text inadvertently added to description of Round to Half Grid (RTHG) when porting from Word documents. (Post-release erratum.)
- Corrected error in code range of MIRP inadvertently introduced when porting from Word documents. (Post-release erratum.)
- ttinst.htm
- Revised links to refer to content ported from Microsoft Word files to Web pages. (Post-release update, September 2018.)
- ttinst1.doc
- Content ported into Web page: tt_instructions.htm. (Post-release update, September 2018.)
- ttinst2.doc
- Clarified description of the GET INFO instruction.
- Added GET VARIATION instruction.
- Content ported into Web page: tt_instructions.htm. (Post-release update, September 2018.)
- ttochap1.htm
- Added section on OpenType Font Variations.
- vhea.htm
- Added section on OpenType Font Variations.
- vvar.htm
- Vertical metrics variations table added.
Version 1.7 — Released March 2015
Summary of Changes:
- cbdt.htm
- Created new page
- cblc.htm
- Created new page
- cmap.htm
- Minor text change in format 4
- colr.htm
- Created new page
- cpal.htm
- Created new page
- default.htm
- Updated version number
- Removed mention of Microsoft Word documents. (Post-release update, September 2018.)
- featurelist.htm
- Added Dotless Forms, Flattened accent forms, Math script style alternates, Required Contextual Alternates and Stretching Glyph Decomposition
- features_ae.htm
- Updated cvXX
- Added Dotless forms
- features_fj.htm
- Added Flattened ascent forms
- Updated UI suggestion for 'halt'
- features_pt.htm
- Updated Stylistic sets and Optical size
- Added Math script style alternates, Required Contextual Alternates and Stretching Glyph Decomposition
- features_uz.htm
- Updated UI suggestion for 'vhal'
- gasp.htm
- Added bit flag
- grstate.doc
- Content ported into Web page: tt_graphics_state.htm. (Post-release update, September 2018.)
- gsub.htm
- Fixed typo in ligature substitution
- head.htm
- Clarified date description
- Update description of bit 11
- htmx.htm
- Updated text beneath table
- instgly.doc
- Content ported into Web page: tt_instructing_glyphs.htm. (Post-release update, September 2018.)
- jstf.htm
- Fixed typo in Jstf priority table
- languagetags.htm
- Added new tags
- math.htm
- Added new table
- maxp.htm
- Updated maxFunctionDefs description
- name.htm
- Changed name IDs 16 and 17 from Preferred name to Typographic name and updated descriptions
- Added name IDs 23 and 24
- Updated description for name ID 6
- Updated description for name ID 20
- os2.htm
- Updated version to 5.0
- Updated formats
- Added usLowerOpticalPointSize and usUpperOpticalPointSize
- os2ver4.htm
- Added page to archive version 4.0
- otff.htm
- Changed Mantissa to Integer
- Changed Truetype collection to Font Collection
- Added new tables (CBDT, CBLC, COLR, CPAL and MATH)
- Moved gasp table to TT Outline table
- Marked VORG table as optional in relation to Postscript outlines
- post.htm
- Updated reference to glyph list
- Updated reference to index numbers
- recom.htm
- Added info on .OTC
- Added post table note
- Corrected link to PANOSE specification. (Post-release update, September 2018.)
- scripttags.htm
- Added new tags
- svg.htm
- Created new page
- ttinst.htm
- Revised links to refer to content ported from Microsoft Word files to Web pages. (Post-release update, September 2018.)
- ttinst1.doc
- Content ported into Web page: tt_instructions.htm. (Post-release update, September 2018.)
- ttinst2.doc
- Content ported into Web page: tt_instructions.htm. (Post-release update, September 2018.)
- vorg.htm
- Indicated table is optional
Version 1.6 — Released April 2009 (updated July 2010)
Summary of Changes:
- Updated HTML to be compliant with W3C standards
- cff.htm
- Appended description(July 2010)
- chapter2.htm
- Added information regarding GDEF table requirements
- Updated page to show correct number of LookupTypes for GSUB and GPOS
- Added MarkFilteringSet to Lookup table
- cmap.htm
- Updated outdated terminology
- Added note to 'cmap' header explaining where to find definitions of ID values
- Changed platform name from Microsoft to Windows
- Added Format 13 (updated July 2010)
- Updated note on the language field in 'cmap' subtables (July 2010)
- default.htm
- Updated version number
- Added appendix for OMPL
- Removed mention of Microsoft Word documents. (Post-release update, August 2018.)
- featurelist.htm
- Updated feature list
- features_ae.htm
- Added Character Variants feature
- Clarified script/language sensitivity for 'c2sc' feature
- features_ko.htm
- Added Left-to-right alternates
- Added Left-to-right mirrored forms
- Updated 'lnum' and 'onum' (July 2010)
- features_pt.htm
- Added to recommended implementation for Stylistic Sets
- Updated Right-to-left alternates
- Added Right-to-left mirrored forms
- Fixed link to 'name' table
- Clarified script/language sensitivity for 'smcp' feature
- Clarified script/language sensitivity for 'size' feature
- gdef.htm
- Updated information relating to GSUB and GPOS tables
- Added MarkGlyphSetsDef to GDEF header
- Updated version number
- Change version number from fixed to ULONG
- Updated GDEF header description (July 2010)
- gpos.htm
- Updated text in Pair Positioning Adjustment: Format 2
- grstate.doc
- Content ported into Web page: tt_graphics_state.htm. (Post-release update, August 2018.)
- head.htm
- Deprecated fontDirectionHint
- Updated description for bit 14 (July 2010)
- instgly.doc
- Content ported into Web page: tt_instructing_glyphs.htm. (Post-release update, August 2018.)
- kern.htm
- Updated definition (July 2010)
- languagetags.htm
- Removed the word “standard” from French and German tags
- Added IPPH and AMPH tags
- Added additional expanatory text
- Added column for ISO 639
- loca.htm
- Added information about zero length glyphs at the end of the table
- name.htm
- Changed platform name from Microsoft to Windows
- Updated outdated terminology
- Added Format 1 Naming table
- Removed “set to zero” from name ID 15
- Updated Unicode Platform Specific encoding ID table (July 2010)
- Updated description for Name ID 4 (July 2010)
- ompl.txt
- Added OpenType Mirrored Pairs List
- os2.htm
- Fixed typo in Telugu range
- Updated bit 61 (July 2010)
- Corrected comments under fsSelection bit table (July 2010)
- otff.htm
- Changed ULONG to FIXED for TTC Header version numbers
- Changed “Table Directory” to “Table Record” since it is refering to a single entry in the directory
- prep.htm
- Fixed typo (changed CVT to CV)
- Added reference to table’s previous name
- recom.htm
- Updated recommendations for 'glyf' table, 'kern' table, 'name' table and non-standard (symbol) fonts (July 2010)
- Corrected link to PANOSE specification. (Post-release update, September 2018.)
- ttchap1.htm
- Added text processing information for ltr and rtl text
- ttinst.htm
- Revised links to refer to content ported from Microsoft Word files to Web pages. (Post-release update, August 2018.)
- ttinst1.doc
- Content ported into Web page: tt_instructions.htm. (Post-release update, August 2018.)
- ttinst2.doc
- Content ported into Web page: tt_instructions.htm. (Post-release update, August 2018.)
Version 1.5 — Released May 2008
Summary of Changes:
- changes.htm
- Reversed order so newest changes are at the top
- cmap.htm
- Added Format 14: Unicode Variation Sequences
- default.htm
- Updated version number
- Added ISO information
- Removed mention of Microsoft Word documents. (Post-release update, August 2018.)
- featurelist.htm
- Added new features to list
- features_ae.htm
- Added Centered CJK Punctuation, Conjunct Forms and Conjunct Form after Ro
- Updated Akhand and Below-base Forms
- features_fj.htm
- Updated Half Forms
- features_ko.htm
- Explained kern/palt interaction
- Added date to JIS reference in NLC Kanji Forms
- Updated Nukta Forms
- features_pt.htm
- Explained kern/palt interaction
- Added Proportional Kana
- Updated Pre-base, Post-base and Reph Forms
- Added Rakar Forms
- features_uz.htm
- Explained vpal/vkrn interaction
- Updated Vattu Variants
- gasp.htm
- Changed version number to 1 in gasp table
- Added flags for symmetric gridfit and symmetric smoothing
- gdef.htm
- Fixed typo regarding the number of tables within the Glyph Definition table
- Fixed spelling error under CaretValue Format 1
- grstate.doc
- Content ported into Web page: tt_graphics_state.htm. (Post-release update, August 2018.)
- gsub.htm
- Corrected title for ContextSubstFormat3 subtable
- glyf.htm
- Fixed typo in simple glyph description
- head.htm
- Updated description for bit 13
- ibmfc.htm
- Removed examples that were inaccurate
- Updated references to ISO standard
- Adjusted wording for subclasses not specifically refected in ISO standard
- instgly.doc
- Content ported into Web page: tt_instructing_glyphs.htm. (Post-release update, August 2018.)
- languagetags.htm
- Updated list of tags
- loca.htm
- Removed incorrect example
- Changed “should” to “must”
- maxp.htm
- Removed redundant sentence
- name.htm
- Added platform 0 encoding ID 5 for Unicode variation sequences
- Added Name IDs 21 and 22
- Updated Microsoft language IDs
- os2.htm
- Updated text describing ulUnicodeRange1 – ulUnicodeRange4
- Added bits 7, 8 and 9 to fsSelection table
- Updated version number
- Updated ulUnicodeRange with latest range bits and added block ranges
- Added recommendation to usDefaultChar and usBreakChar description
- Corrected link to PANOSE specification. (Post-release update, September 2018.)
- os2ver0.htm
- Corrected link to PANOSE specification. (Post-release update, September 2018.)
- os2ver1.htm
- Corrected link to PANOSE specification. (Post-release update, September 2018.)
- os2ver2.htm
- Corrected link to PANOSE specification. (Post-release update, September 2018.)
- os2ver3.htm
- Created new page to archive previous version of 'OS2' table
- Corrected link to PANOSE specification. (Post-release update, September 2018.)
- otff.htm
- Added new data type (UINT24) to handle Unicode variation sequences
- Added recommendation regarding 'VORG' table
- recom.htm
- Added additional cross-platform recommendations
- Added additional BASE table recommendations
- Added recommendation regarding 'VORG' table
- Corrected link to PANOSE specification. (Post-release update, September 2018.)
- scripttags.htm
- Added script tags for scripts recently added to Unicode
- Changed 'dflt' script to 'DFLT' script in the description at the bottom of the page
- ttinst.htm
- Revised links to refer to content ported from Microsoft Word files to Web pages. (Post-release update, August 2018.)
- ttinst1.doc
- INSTCTRL: Correct value stated for selector flag 3.
- Content ported into Web page: tt_instructions.htm. (Post-release update, August 2018.)
- ttinst2.doc
- Updated GETINFO with ClearType information
- Content ported into Web page: tt_instructions.htm. (Post-release update, August 2018.)
- ttochap1.htm
- Removed outdated information about behavior on Windows 95
- wgl4d.htm
- Added four Macedonian characters
Version 1.4 — released 11 October 2002
Summary of Changes:
- baselinetags.htm
- Corrected typographic error.
- Changed hanging baseline references from Hindi to Tibetan.
- chapter2.htm
- Corrected link to GDEF table.
- Add documentation on new script tag 'DFLT'.
- cmap.htm
- Add Name column to tabular data to make consistent with other parts of spec.
- Correct description of Encoding Record.
- cvt.htm
- Indicate that length must be integral value of FWORD units.
- default.htm
- Update the version number to 1.4.
- Removed mention of Microsoft Word documents. (Post-release update, August 2018.)
- dsig.htm
- Provide information for ulVersion to be 0x00000001.
- Update to show usFlag bits that are assigned.
- Add section on signatures for TrueType Collections.
- ebdt.htm
- Change wording to indicate 'EBDT' is superset of 'bdat'. These are not the same.
- featurelist.htm
- Added new features: abvf, c2pc, ljmo, nlck, pcap, pref, rtla, tjmo, unic, and vjmo.
- Change friendly name of 'calt' from Connection Forms to Contextual Alternates.
- fpgm.htm
- Add comment that array size n is the number of bytes in the table.
- gdef.htm
- Example 6, typos in the comments column for increasing 15 and 16ppem corrected.
- gpos.htm
- Clarify origin of Cartesian coordinate system at baseline of the left side.
- Specify all values are done in font unit measurements.
- Update images for better presentation.
- PairPosFormat1 subtable ValueRecord changed to Offset, PairSetOffset[PairSetCount].
- Update wording on MarkToMark attachment.
- grstate.doc
- Content ported into Web page: tt_graphics_state.htm. (Post-release update, August 2018.)
- gsub.htm
- Add Lookup Type 8, Reverse Chaining contextual single substitution.
- hdmx.htm
- Remove references to EGA.
- Add statement that bit 2 of head.flag must be set to 1.
- Add Name columns to tabular data for consistency with spec.
- head.htm
- Updated macStyle bit descriptions for bits 2 to 15.
- unitsPerEm annotated that it should be a power of 2.
- hhea.htm
- Change FWord to FWORD for correct data type spelling.
- ibmfc.htm
- Fix formatting to indent subclasses for better readability.
- instgly.doc
- Content ported into Web page: tt_instructing_glyphs.htm. (Post-release update, August 2018.)
- name.htm
- Add Name column to tabular data for consistency with spec.
- Correct descriptions in Naming Table for count and nameRecord[count].
- Clarified description of encoding ID 0/3. Added encoding ID 0/4. Changed description of encoding ID 3/10 to UTF-32.
- Added description and example, for use of name ID 4 in CFF fonts.
- Clarified working for use of name ID 5 (Version string).
- Changed wording for name ID 16 (Preferred Family) and name ID 17 (Preferred Subfamily).
- Suggest that style strings (name ID 2 or 17) match with OS/2.usWeightClass and OS/2.usWidthClass.
- os2.htm
- Updated version number to 0x0003
- Updated Unicode sub-range bits to be aligned with Unicode 3.2.
- Remove weighted calculation of xAvgCharWidth.
- Make fsType bits 0-3 to be mutually exclusive. In other words, only one of those bits may be set to “1” at a time. This is to avoid problems of ambiguity in what the font designer intends.
- Change link to PANOSE specification.
- Updated description of usFirstCharIndex, usLastCharIndex, usDefaultChar, usBreakChar; in context of fonts that provide surrogate character support.
- Corrected link to PANOSE specification. (Post-release update, September 2018.)
- os2ver0.htm
- Corrected link to PANOSE specification. (Post-release update, September 2018.)
- os2ver1.htm
- Corrected link to PANOSE specification. (Post-release update, September 2018.)
- os2ver2.htm
- Corrected link to PANOSE specification. (Post-release update, September 2018.)
- otff.htm
- Update filename information for TrueType outline fonts.
- Add data types for FWORD and UFWORD.
- Corrected content and description of TTC header v1 and v2.
- Moved VORG table to PostScript Outlines group.
- pclt.htm
- Change to discourage use of this table.
- proposals.htm
- Remove proposed feature tags that were incorporated into this version.
- recom.htm
- Added recommendation for first four glyphs in font.
- Added recommendation for shape of .notdef glyph.
- Corrected link to PANOSE specification. (Post-release update, September 2018.)
- scripttags.htm
- Add script tags for Byzantine Music and Default.
- ttinst.htm
- Revised links to refer to content ported from Microsoft Word files to Web pages. (Post-release update, August 2018.)
- ttinst1.doc
- Content ported into Web page: tt_instructions.htm. (Post-release update, August 2018.)
- ttinst2.doc
- Corrected description in Logical_Functions.Greater_Than.
- Content ported into Web page: tt_instructions.htm. (Post-release update, August 2018.)
- ttoreg.htm
- Reworded and reorganized for better readability.
- vdmx.htm
- Change ratio record and vTable record to tabular format.
- Recommend use of version 1 vdmx.
- wgl4e.htm
- Optional glyphs identified and marked. Added a footnote.
Version 1.3 — released April, 2001
Summary of Changes:
- Multiple Master support in OpenType, discontinued. The following tables pertaining to it have been removed from this version of the OpenType specification: 'fvar', 'MMSD', 'MMFX'.
- base.htm
- BaseTagList Table
Added a sentence with a link to the baseline tags in the tags registry. - BaseCoord Format 4
Removed.
- BaseTagList Table
- cff.htm
- Removed references to MM fonts in the CFF and Type 2 Charstring Format specifications. See the change log in each specification for additional changes made.
- chapter2.htm
- Table Organisation
In paragraph 3, changed the number of types of GSUB and GPOS lookups. Phrase added to Paragraph 4 to exclude the Extension lookup. - LookupFlag bit enumeration
Name of the first bit reverted back to RightToLeft. Provided newer description of its use. - Coverage Table
Phrase added to exclude the Extension lookup.
- Table Organisation
- cmap.htm
- Merged paragraph 3 and 4 in the introduction section.
- Added notes that fonts for Windows that support UCS-4 characters (surrogates), need to use an encoding ID 10 and format 12.
- The version field has been renamed as ‘language’, to align it with Apple’s TT spec. Added a note to clarify the use of this field.
- Added information that platform ID 3, encoding ID 7,8 and 9 are reserved.
- Added platform ID 3, encoding ID 10.
- Swapped the description of encoding ID 3 and 4. They were incorrectly mapped to Big5 and PRC respectively, in earlier versions of the specification.
- Added a note on OTF Windows compatibility mapping.
- Formats 2, 4, 6.
Made the description of the ‘length’ field in these formats consistent with the rest of the formats. - Format 2
Removed the duplicate entry for subHeaders[ ]. - Format 4
Corrected ‘endCode’ and ‘startCode’ values in the example for this format. - Supporting 4-byte character codes (Formats 8, 10, 12)
Added these new formats.
- ebdt.htm
- Minor typo in the name of ebdtComponent corrected.
- feattags.htm
- Added features 'ccmp', 'fin2', 'fin3', med2' and 'rlig'.
- Clarified the Feature Interaction sections for 'kern', 'vkrn'.
- Updated GSUB lookup type to be used, in the Recommended implementation section of 'ordn'.
- fvar.htm
- This table removed.
- gdef.htm
- Introduction
Added information on the MarkAttachClassDef field. - Overview
Updated image to contain MarkAttachClassDef. - GDEF Header
Added missing information on the MarkAttachClassDef field. - GDEF Header Table
Added the note that offsets might be null for the GlyphClassDef, AttachList, LigCaretList, MarkAttachClassDef - GlyphClassDef Enumeration List
An explanatory note added for definition of ligatures and component glyphs. - Mark Attachment Class Definition Table
An explanatory section and example 7 added. - CaretValue: Format 4
This format used by MM fonts removed.
- Introduction
- gpos.htm
- Corrected the link “Common Table Formats” to read “OpenType Common Table Formats”; throughout table.
- Table Organization
Updated the image. Added links for all lookup types. Added Extension positioning as LookupType 9, types 10+ are now Reserved. - PairPosFormat1 subtable
PairSet field corrected to specify it as an array of Offsets. - Lookup Type 6
Sentence added to clarify input context for MarkToBase, MarkToLigature and MarkToMark positioning tables. - LookupType 9: Extension Positioning
This new lookup type added. - ValueRecord table
Removed XIdPlacement, YIdPlacement, XIdAdvance, YIdAdvance and the sentence following the table. - ValueFormat bit enumeration
Removed XIdPlacement, YIdPlacement, XIdAdvance, YIdAdvance and the sentence following the table. - Anchor Table: Format 4
Removed.
- gsub.htm
- Corrected the link “Common Table Formats” to read “OpenType Common Table Formats”; throughout table.
- Substituting Glyphs with OpenTypeTM
Types of lookups corrected to six. Added an explanation to the ligature substitution section, to clarify the location occupied by a ligature glyph when it replaces a sequence of glyphs. Missing paragraph on Chaining contextual substitution added. - Table Organization
Updated image. - LookupType Enumeration table for glyph substitution
Added links for all lookup types. Added Extension Substitution as the 7th lookup type. This hence classifies types 8+ as Reserved. - LookupType 2:
Prohibited the deletion of an input glyph, and added that GlyphCount should always be greater than 0. - Chaining Context Substitution Format 1: Simple Chaining Context Glyph Substitution
Added that the match for the string ‘backtrack sequence + input sequence + lookahead sequence’ takes place in the simplest of cases; and that lookup flag values affect backtrack/lookahead sequences. Since the input sequence includes the covered glyph, removed “covered glyph” from the above string. - LookupType 7: Extension Substitution
This new lookup type added.
- head.htm
- table
Clarified description for bit 1, 5-10.
Added specification for bit 13.
- table
- hhea.htm
- table
Added a footnote for the fields Ascender, Descender and LineGap.
- table
- hmtx.htm
- Added a note that the advanceWidth for each glyph in CFF OpenType fonts must match its x width in the CFF table.
- loca.htm
- Corrected minor typo.
- maxp.htm
- Added a note to indicate the difference in representing the fractional part of a version number when it is non-zero.
- mmfx.htm
- This table removed.
- mmsd.htm
- This table removed.
- name.htm
- Minor rewording of text done in the introduction section related to fonts for the Macintosh.
- Platform ID, specific encoding ID and languageId information combined into one table.
- Unicode platform-specific encoding IDs (platform ID = 0) This new table added.
- Microsoft platform-specific encoding IDs
This table replaced with a more comprehensive table from the cmap.htm. - Mac platform-specific encoding IDs:
Clarified IDs 2 and 25. Corrected typo in ID 32. - Mac language IDs:
Newer IDs added 23-150. - ISO specific encodings (platform ID=2)
Marked as deprecated. Minor typo in the sentence below the table corrected. - Custom platform-specific encoding IDs (platform ID = 4) Newer platform ID added.
- Name IDs
Added newer description for nameID 5. Added nameID 19 and 20. - Examples
Added example for nameID 19. - LCID-CP list
Updated this list.
- os2.htm
- xAvgCharWidth.description
Comments for this field updated. - fsType.table
Added Bit Mask and description details for the case when no bit is set; added Bit Mask value 0x0001. - fsType.comments
Information on setting Bit Masks consolidated into the description column of the table. Removed the redundant section below the table. - yStrikeoutPosition.description
Added that this is the distance of the top of the strikeout stroke. - panose.description
Removed dead url for the PANOSE evaluation document, added that the “greybook” reference could be used instead. - ulUnicodeRange.table
Updated the Unicode standard version number to 3.0 in the description for these fields. Added bits 70- 127. Added a footnote for setting bit 57 (Surrogates). - usFirstCharIndex.description
Minor correction-- added the word platform specific. - sTypoAscender and sTypodescender
Minor corrections done; “design space” now referred to as “ideo em box” in the descriptions; added a links to recom.htm for these fields. - usWinAscent
Explanatory note added to explain the circumstances in which clipping will take place. - usWinDescent
Explanatory note added to explain the circumstances in which clipping will take place. - sxHeight
Added a note that this metric can be used in font substitution. - usDefaultChar
Added that for a given font, missing glyphs will be displayed using the content of glyph 0 in the selected font.
- xAvgCharWidth.description
- otff.htm
- Version Numbers
Added explanation that representation of a non-zero fractional part in version numbers, differs from the representation of the matissa. - Tables Related to PostScript Outlines
Removed links and description details for the fvar, MMSD and MMFX tables. - Advanced Typographic Tables
Added a link to OpenType Layout Common Table Formats. - Other OpenType Tables
Added the VORG table name to the list.
- Version Numbers
- otover.htm
- Related documentation
Removed sections in the description related to MM fonts.
- Related documentation
- post.htm
- table.version.description
Added versions 2.5 and 3.0 - table.underlinePosition.description
PostScript information added. - version2.0
Updated name and description details in the table contents - version2.5
Updated table contents, added that this version has been deprecated.
- table.version.description
- recom.htm
- 'BASE' Table
This section added. - 'cmap' table
Added details on requirements that need to be satisfied by surrogate fonts on Windows. - 'head' Table
Added details regarding usage of the fontRevision value. - 'hhea' Table
Removed sentence which incorrectly stated that OpenType fonts that include CFF data must set numberOfHMetrics equal to the number of glyphs in the font. - 'post' Table
Updated content related to glyph names in the post table. - 'OS/2' Table
Added section on sTypoAscender, sTypoDescender, sTypoLineGap. - General Recommendations
Updated the table ordering list for OpenType fonts containing CFF data by adding the 'maxp' table; and, removing the 'fvar' and 'MMSD' tables. - Baseline to Baseline Distances
Added a paragraph on the recommended use of sTypoAscender, sTypoDescender, and sTypoLineGap. - OpenType CJK Font Guidelines
This new section added.
- 'BASE' Table
- ttochap1.htm
- Introduction
Removed 'MMSD' reference.
Expanded the brief description of the content of Registered OpenType Layout Tags to reflect all OpenType tags: scripts, languages, baselines, features. - How Multiple Master OpenType Fonts Use OpenType Layout Tables
This section removed.
- Introduction
- ttoreg.htm
- Added links in the introduction section, to help jump to the script, language, baseline and feature tag sections.
- Script tags
Corrected script tag length description.
Added newer script tags. - Language system tags
Added newer language tags. - Baseline tags
Added newer baseline tags: “icfb”, “icft” and “idtp”. Expanded the description of existing tags into two categories:“Baseline for HorizAxis” and “Baseline for VertAxis”. - Ideographic Em-Box
This new section added. - Ideographic Character Face
This new section added.
- vhea.htm
- Introduction
Added a link each for the vmtx table and the CJK guidelines section. - table.version.description
Version number increased to 1.1. Added a note to indicate the difference in representing the fractional part of a version number when it is non-zero. - table.ascent
Replaced by vertTypoAscender. - table.descent
Replaced by vertTypoDescender. - table.lineGap
Replaced by vertTypoLineGap. - Vertical Header Table Example
Changed version value to 1.1. Corrected the name for vertTypoLineGap
- Introduction
- vmtx.htm
- Introduction
Added a link for accessing the CJK guidelines section. - Vertical Origin and Advance Height
This new section added. - Vertical Metrics Table Format
Added note on the calculating the top side bearing.
- Introduction
- vorg.htm
- This new table added. This is needed by CFF OpenType fonts to locate the origin of vertical glyphs.
- wgl4d.htm
- Added a missing asterisk for PostScriptName.macron
- Added the U+02dc (tilde)-- was missing from the list.
Version 1.25 — released July, 2000
Summary of Changes:
- feattags.htm (Feature Tags) -
- Features added:
abvm (Above-base Mark Positioning); abvs (Above-base Substitutions); akhn (Akhand); blwf (Below-base Forms); blws (Below-base Substitutions); clig (Contextual Ligatures); cswh (Contextual Swash); curs (Cursive Positioning); dist (Distances); falt (Final Glyph on Line Alternates); half (Half Forms); haln (Halant Forms); hkna (Horizontal Kana Alternates); isol (Isolated Forms); jalt (Justification Alternates); locl (Localized Forms) (replaces jajp, kokr, vivn, zhch, and zhtw); mkmk (Mark to Mark Positioning); nukt (Nukta Forms); pres (Pre-base substitutions); pstf (Post-base Forms); psts (Post-base Substitutions); rphf (Reph Forms); ruby (Ruby Notation Forms); size (Optical Size); vatu (Vattu Variants); vhal (Alternate Vertical Half Metrics); vkna (Vertical Kana Alternates); vkrn (Vertical Kerning) vpal (Proportional Alternate Vertical Metrics). - Features removed:
crcy (Currency), dpng (Diphthongs), jajp (Japanese Forms), kokr (Korean Forms), vivn (Vietnamese Forms), zhcn (Simplified Chinese Forms), zhtw (Traditional Chinese Forms). - Features modified:
aalt: Added ordering suggestion, reworked user interface suggestions, clarified implementation recommendation, feature interaction and function.
altv: changed tag to valt.
c2sc, dlig: Clarified function, example and feature interaction.
calt, case, dnom, expt, halt, hist, hwid, jp78, jp83, jp90, kern, lfbd, liga, lnum, numr, onum, pwid, qwid, rtbd, smpl, sups, titl, twid, valt: Clarified feature interaction.
fina, init, medi, rand, salt, swsh: Clarified user interface suggestion and feature interaction.
frac: Added numr and dnom extensions, clarified feature interaction.
fwid, palt: Clarified feature interaction and function.
hngl: Clarified feature interaction and implementation recommendation.
ital: Clarified function and feature interaction.
mark: Added example, application interface, user interface suggestion, script sensitivity, feature interaction. Modified recommended implementation.
mset: Added example.
nalt: Clarified user interface suggestion, implementation recommendation and feature interaction.
opbd: Added lfbd and rtbd extensions; clarified user interface suggestion and feature interaction.
ordn: Clarified script sensitivity, corrected lookup type, clarified implementation recommendation and feature interaction.
ornm: Clarified user interface suggestion, implementation recommendation, feature interaction and function description.
smcp: Added note about dotlessi; clarified function and feature interaction.
trad: corrected terminology (hanzi, not hanja), clarified user interface suggestion and implementation recommendation.
vert: Clarified feature interaction and added ordering recommendation; extended application interface notes.
vrt2: Changed ‘friendly’ name, clarified feature interaction and added ordering recommendation; added ATM/OTF driver information and descriptions of how to construct the rotated glyphs in the Function section.
zero: Clarified user interface suggestion. - Features relocated:
mark and mset have been moved from the Metric Behaviors category, to the Other Substitutions category for consistency in classification. - chapter2.htm - modified description of FeatureParams field for a non-null offset (the size feature uses it).
Version 1.2 — released November, 1998
Summary of Changes:
- Data type notation and spelling corrected throughout
- base.htm - added BaseCoord Table Format 4
- chapter2.htm - corrected example 3; refined description of next glyph; reserved RightToLeft lookup flag; corrected descriptions of LookupFlag bits
- cmap.htm - removed legacy encodings
- dsig.htm - updated field names and format of signature record; added step to creation of content digest
- feattags.htm - registered new features crcy, dnom, jajp, kokr, lfbd, numr, rtbd, vivn, vrt2, zhcn, zhtw; removed features trak, vrot; edited and clarified descriptions of features afrc, altv, c2sc, calt, case, cpsp, dlig, dpng, expt, fina, frac, fwid, halt, hlig, lngl, hwid, init, ital, jp78, jp90, kern, lnum, medi, mgrk, onum, opbd, ordn, ornm, palt, pnum, pwid, qwid, smcp, smpl, sups, tnam, tnum, trad, twid, vert
- gdef.htm - added MarkAttachClassDef to header, and MarkAttachmentType bit setting to LookupFlag bits; added CaretValue Table Format 4
- glyf.htm - added table detailing component record structure
- gsub.htm - added format 6, for chaining contextual substitution; general editing
- gpos.htm - added format 8, for chaining contextual positioning; clarified pair positioning operations; corrected Example 10; clarified coordinate system description; refined description of when a lookup is finished; added AnchorTable Format 4; general editing
- head.htm - added note about fontRevision field; clarified description of compression flag
- hhea.htm - corrected description of numberOfHMetrics
- mmfx.htm - corrections throughout; added MMFXIdZero
- name.htm - general editing
- os2.htm - renamed usMaxLookup to usMaxContext; edited descriptions of defaultChar and breakChar; updated registered vendors
- otff.htm - general editing; added ulDsigTag and related fields to TTC header; added datatypes LONGDATETIME; clarified checksum calculations; added tag name restrictions; clarified use of version numbers
- post.htm - renamed FormatType to Version
- vhea.htm - replaced mention of centerline with vertical baseline; corrected description of numOfLongVerMetrics
- CFF.pdf and Type2.pdf updated (December 1998)
- Several PostScript glyph names corrected in the WGL tables (18 December 1998)
- name.htm - Descriptions of name ID 13 and 14 corrected (29 January 1999)
- mmsd.htm - Attribute flags corrected (29 January 1999)
- head.htm - Data type of xMin corrected (29 January 1999)
Version 1.1 — released April, 1998
Summary of Changes:
- CFF and Type2 specs updated
- chapter2.htm - corrected typo in figure 2d (fig2d.gif)
- dsig.htm - added info about location of DSIG table; added list of sfnt structural requirements
- feattags.htm - created more comprehensive list and description of layout feature tags
- gpos.htm - corrected illustration 4f (fig4f.gif)
- head.htm - added bit 12 (converted) to flags field
- hhea.htm - removed CFF restriction listed in numberOfHMetrics field; added caretOffset field.
- maxp.htm - added version 0.5 table (numGlyphs field); general editing
- name.htm - added name id’s 16, 17, and 18; corrected name id example
- os2.htm - added new version (2), adding new fields sxHeight, sCapHeight, usDefaultChar, usBreakChar, usMaxLookup; clarified sTypoAscender and sTypoDescender fields; changed some Unicode range values to reflect Unicode 2; updated registered vendors
- otff.htm - general editing; added description of two types of TTC headers, and DSIG table location
- recom.htm - general editing
Version 1.01 — released October, 1997
Summary of Changes:
- mmfx.htm, fvar.htm, mmsd.htm, otover.htm, recom.htm - edits throughout
- loca.htm - changed long-aligned to word-aligned for local offsets
- wgl4.htm - added reference to Euro symbol
- dsig.htm - added note about system use of dsig table to distinguish OT from TT fonts
- ttoreg.htm - added VIT, TRK, and ROM lang sys tags
- otff.htm - rearranged table list
- base.htm - change to basecoordformat3 data type
- gpos.htm - pairposformat1 subtable valuerecord becomes offset
- kern.htm - gpos clarification
- name.htm - added name id’s 13 and 14
- ltsh.htm - clarified option for fixed-pitch fonts
- vdmx.htm - version 1 added to vdmx table
- os2.htm - added codepage range 8 for Vietnamese; added new vendor id’s, including UNKN
Version 1.0 — released April, 1997
Tee yhteistyötä kanssamme GitHubissa
Tämän sisällön lähde on GitHubissa, jossa voit myös luoda ja tarkastella ongelmia ja pull-pyyntöjä. Katso lisätietoja osallistujan oppaasta.
OpenType specification