Proposal: .OTC filename extension recommendation

Sairus Patel sppatel at adobe.com
Wed Oct 5 21:15:11 CEST 2011


=== Overview:

I'm sending this proposal to both the OT and OFF lists, per guidelines from the specifications' editors. The proposal includes:

- A new filename extension recommendation (.OTC)
- Some accompanying changes in terminology.

There are no format changes; current parsers should not need to change as a result of this proposal (though this proposal may alert them to an aspect of the existing specification that they may not have implemented yet).


=== Rationale:

OT already allows for CFF OT fonts to be within a TTC: "A TrueType Collection (TTC) is a means of delivering multiple OpenType fonts in a single file structure." Some implementations support it (e.g. Flash Player's world-ready text APIs) and some don't (e.g. Windows).

However, it is somewhat misleading to have a .TTC filename extension for a packaging of CFF OT fonts. We propose a .OTC extension.

Filename extension conventions are appropriate for the Recommendations section and not the specification proper. This was discussed on thread "File name extensions, OTCs" on the opentype-migration-list at indx.co.uk list 27 Sep '11.


=== Proposal { my comments are in curly brackets }

{ === In http://www.microsoft.com/typography/otspec/otff.htm [OFF sec. 4]: }

1. { Replace the contents of the "Filenames" section with: }

For filename extension conventions, see the "Filenames" section in Recommendations { link to the Recommendations page: http://www.microsoft.com/typography/otspec/recom.htm or OFF sec 7 }

2. { Remove the following vague implementation limitation note; such notes are better suited for the Recommendations page if desired: }

The CFF rasterizer does not currently support TTC files.

3. { Remove the following vendor tool note; such notes belong on the Recommendations page if desired: }

A tool is available from Microsoft to help build .TTC files. The process involves paying close attention the issue of glyph renumbering in a font and the side effects that can result, in the 'cmap' table and elsewhere. The fonts to be merged must also have compatible TrueType instructions-that is, their preprograms, function definitions, and control values must not conflict.

4. { Remove: }

TrueType Collection files use the filename suffix .TTC.

5. { Replace: }
 
A TrueType Collection (TTC) is a means of delivering multiple OpenType fonts in a single file structure.

{ by: }

An OpenType Collection (OTC), formerly known as TrueType Collection, is a means of delivering multiple OpenType fonts in a single file structure.

6. { Replace: }

TrueType Collection ID string: 'ttcf'

{ by: }

OpenType Collection ID tag: 'ttcf' (used for both CFF and TT, for backward compatibility)

7. { Replace the following terms (<existing term> -> <proposed term>) in http://www.microsoft.com/typography/otspec/otff.htm [OFF sec. 4]. The replacement should not be done on text affected by items 1-6 above. }

TTC Header -> OTC Header
TTCHeader -> OTCHeader
TrueType Collection -> OpenType Collection
TTC -> OTC


{ === The following edits apply to http://www.microsoft.com/typography/otspec/recom.htm [OFF sec 7]: }

8. { Replace the current contents of the "Filenames" section: }

OpenType fonts may have the extension .OTF or .TTF, depending on the kind of outlines in the font and the creator's desire for compatibility on systems without native OpenType support.

    * In all cases, fonts with only CFF data (no TrueType outlines) always have an .OTF extension.
    * Fonts containing TrueType outlines may have either .OTF or .TTF, depending on the desire for backward compatibility on older systems or with previous versions of the font. TrueType Collection fonts should have a .TTC extension whether or not the fonts have OpenType layout tables present.

{ by: }

OpenType fonts should have the extension .OTF or .TTF, depending on the kind of outlines in the font and desired backward compatibility.

    * In all cases, fonts with only CFF data (no TrueType outlines) should always have an .OTF extension.
    * Fonts containing TrueType outlines may have either .OTF or .TTF, depending on the desire for backward compatibility on older systems or with previous versions of the font.
    * OpenType Collection fonts should have a .TTC or .OTC extension whether or not the fonts have OpenType layout tables present, and regardless of the kinds of outlines present. The .OTC extension recommendation was introduced in OpenType specification version 1.7, so .TTC may be used for CFF fonts if needed for backward compatibility with older software that was not aware of it.

In all cases, software must determine the kind of outlines present in a font not from the filename extension but from the contents of the file.

9. { Add the following new section after the "Filenames" section. Reviewers, feel free to propose adding implementation or tools notes to this section, e.g. from item 3 above. My own proposal doesn't detail any specifics, since the specification cannot be kept up to date fast enough for this kind of information. }

OpenType Collections

While the specification has allowed for any kind of OpenType font to be packaged in an OpenType Collection (formerly known as TrueType Collection) for years, not all implementations may support it yet.

Also see filename extension recommendations in "Filenames" section above.

{ === end of proposal }


Best,
Sairus




More information about the mpeg-otspec mailing list