What's in a 'name' (Table)?

News|Adobe Blogs|Dr. Ken Lunde 2015-11-07 15:18:13

By default, the AFDKO makeotf tool includes Macintosh (platformID=1, encodingID=0, languageID=0) 'name' table strings, and if specified in the "FontMenuNameDB" or "features" files, localized Macintosh 'name' table strings will also be included. The next release of AFDKO will include "-omitMacNames" as a new command-line option for makeotf whose purpose is to exclude Macintosh 'name' table strings, other than any that are explicitly specified in the "features" file.

Keep in mind that Macintosh 'name' table strings specify non-Unicode encodings, and given that Apple's OS X no longer depends on the presence of non-Unicode 'name' table strings, there is little benefit in including them for modern OpenType fonts. The only 'name' table strings that must be present in OpenType fonts are Windows (platformID=3, encodingID=1, languageID=0x0409) ones, which, despite the platformID name, are cross-platform. Localized platformID=3 'name' table strings are optional.

The first Adobe fonts to omit Macintosh 'name' table strings are the one of last month's articles. This resulted in a much smaller and cleaner 'name' table, whose spot output is shown below:

%spot-tname=3 FDArrayTest257.otf

[name]

---record[index]={platformId,scriptId,languageId,nameId,length,offset} =

[ 0]={ 3, 1, 409, 0, 136,0000} [0000]=

[ 1]={ 3, 1, 409, 1, 32,0088} [0088]=

[ 2]={ 3, 1, 409, 4, 32,0088} [0088]=

[ 3]={ 3, 1, 409, 2, 14,00a8} [00a8]=

[ 4]={ 3, 1, 409, 3, 62,00b6} [00b6]=<1.000;ADBO;FDArrayTest257;ADOBE>

[ 5]={ 3, 1, 409, 5, 108,00f4} [00f4]=

[ 6]={ 3, 1, 409, 6, 28,0160} [0160]=

[ 7]={ 3, 1, 409, 8, 52,017c} [017c]=

[ 8]={ 3, 1, 409, 9, 24,01b0} [01b0]=

[ 9]={ 3, 1, 409, 11, 52,01c8} [01c8]=

[10]={ 3, 1, 409, 13, 662,01fc} [01fc]=

[11]={ 3, 1, 409, 14, 52,0492} [0492]=

Xplicit

Xplicit