[MPEG-OTSPEC] [mpeg-OTspec] Mac version string in 'name' table

Sairus Patel sppatel at adobe.com
Tue Sep 8 00:30:08 CEST 2020


Julio at Apple confirmed that their modern OS text components do not require the Mac platform subtable, but added that some apps or third party libraries may still expect them.

I opened https://github.com/MicrosoftDocs/typography-issues/issues/604 on the Recommendations (not cmap) chapter, since that’s where the language to be replaced currently lives (the “Macintosh 'cmap' Table” section).

In the issue, I also noted that the rest of that section was outdated too:

“In order for the Macintosh 'cmap' table to be useful, the glyphs required for the Macintosh must have glyph indices less than 256 (since the 'cmap' subtable format 0 uses uint8 indices and therefore cannot index any glyph above 255).
The Apple 'cmap' subtable should be constructed according to Apple guidelines.”

Those two sentences can probably simply be removed: the first assumes only format 0 is needed (possibly dating from TrueType’s earliest days!); the second seems unnecessary.

Thanks,
Sairus

From: Peter Constable <pgcon6 at msn.com>
Date: Sunday, September 6, 2020 at 5:59 PM
To: Sairus Patel <sppatel at adobe.com>, Bob Hallissy <bob_hallissy at sil.org>, Ken Lunde <lunde at adobe.com>, "mpeg-otspec at lists.aau.at" <mpeg-otspec at lists.aau.at>
Subject: RE: [MPEG-OTSPEC] [mpeg-OTspec] Mac version string in 'name' table

Thanks, Sairus.

And good point wrt cmap Mac encoding. No need for more input since Apple already makes this clear in their TrueType Reference Manual<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdeveloper.apple.com%2Ffonts%2FTrueType-Reference-Manual%2FRM06%2FChap6cmap.html&data=02%7C01%7Csppatel%40adobe.com%7C0a92665f99974c30f31d08d852c940e4%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637350371619933716&sdata=cLTTYrq1u386GufCTCrB20NZJ0RnveZbAUC4GOaTrZE%3D&reserved=0>:

“Note that the use of the Macintosh platformID is currently discouraged. Subtables with a Macintosh platformID are only required for backwards compatibility with QuickDraw and will be synthesized from Unicode-based subtables if ever needed.”

It would be helpful if you coud open issue on the OT spec cmap chapter for this. Thanks.


Peter

From: Sairus Patel <sppatel at adobe.com>
Sent: Sunday, September 6, 2020 9:51 AM
To: Peter Constable <pgcon6 at msn.com>; Bob Hallissy <bob_hallissy at sil.org>; Ken Lunde <lunde at adobe.com>; mpeg-otspec at lists.aau.at
Subject: Re: [MPEG-OTSPEC] [mpeg-OTspec] Mac version string in 'name' table

I’m all for softening that ‘name’ table recommendation/requirement in the way Peter proposes.

Would this be a good time also to revisit the concomitant ‘cmap’ requirement? –

“When building a font containing Roman characters that will be used on the Macintosh, an additional subtable is required, specifying platform ID of 1 and encoding ID of 0 (this subtable may use 'cmap' formats 0, 2, 4, or 6).”

I see several system fonts on my Mac (macOS 10.15.6) which support Latin but don’t have a platform ID 1 cmap subtable, which suggests that such a subtable isn’t always needed for such fonts on modern macOS versions.

If someone from Apple could weigh in, that would be great. If we could soften the hard requirement into something more qualified, that would be useful.

Sairus

From: mpeg-otspec <mpeg-otspec-bounces at lists.aau.at<mailto:mpeg-otspec-bounces at lists.aau.at>> on behalf of Peter Constable <pgcon6 at msn.com<mailto:pgcon6 at msn.com>>
Date: Saturday, September 5, 2020 at 12:15 PM
To: Bob Hallissy <bob_hallissy at sil.org<mailto:bob_hallissy at sil.org>>, Ken Lunde <lunde at adobe.com<mailto:lunde at adobe.com>>, "mpeg-otspec at lists.aau.at<mailto:mpeg-otspec at lists.aau.at>" <mpeg-otspec at lists.aau.at<mailto:mpeg-otspec at lists.aau.at>>
Subject: Re: [MPEG-OTSPEC] [mpeg-OTspec] Mac version string in 'name' table

I’m revisiting this, as this was opened as an issue for the OT spec, and also is relevant for OFF.

The recommendation, as stated, pertains to requirements for fonts “that will be used on the Macintosh”. But based on Sascha Brawer’s investigation and subsequent discussion, it appears that this is no longer a requirement on current Apple platforms. Thus, this recommendation, as currently worded, does appear to be obsolete.

In a fork of this thread, Greg Hitchcock mentioned that some font installers that run on Windows may require the 1/0 string. (It’s not required by Windows itself, though.) That could be pointed out as information for a font developer to consider.

Hence, I propose replacing that paragraph with the following:

“Names for the Macintosh platform (platform ID 1) were required on older Apple platforms, but are no longer required on modern platforms. Some legacy font installers, however, may require names platform ID 1, encoding ID 0.”


Peter

From: mpeg-otspec <mpeg-otspec-bounces at lists.aau.at<mailto:mpeg-otspec-bounces at lists.aau.at>> On Behalf Of Bob Hallissy
Sent: Thursday, June 25, 2020 1:27 PM
To: Ken Lunde <lunde at adobe.com<mailto:lunde at adobe.com>>; mpeg-otspec at lists.aau.at<mailto:mpeg-otspec at lists.aau.at>
Subject: Re: [MPEG-OTSPEC] [mpeg-OTspec] Mac version string in 'name' table

[Resending, this time hopefully to the correct list!]

I'd like to propose we remove the Name table Recommendation that currently says:



When building a font containing Roman characters that will be used on the Macintosh, an additional name record is required, specifying platform ID of 1 and encoding ID of 0.

since, according to this 2018 post from Sascha Brawer<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Ffonttools%2Ffonttools%2Fissues%2F1170%23issuecomment-368492829&data=02%7C01%7Csppatel%40adobe.com%7C0a92665f99974c30f31d08d852c940e4%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637350371619943708&sdata=8eQ4aWAmjtsmIxmP5ziinjnswrZLV5GdH4TLru24Dgk%3D&reserved=0> and by evidence of many fonts that work on Apple platforms without Platform ID 1 strings, such is no longer required.

Bob
On 2/21/2018 3:58 PM, Ken Lunde lunde at adobe.com<mailto:lunde at adobe.com> [mpeg-OTspec] wrote:

Peter,



Thank you for letting me know.



Anyway, I asked our Type QE to check this in Adobe XD, and what is happening is much simpler: localized 'name' table strings are being completely ignored, and only the English-language ones are being used. We also compared our fonts with and without Macintosh 'name' table strings, and didn't see any different behavior, which means that the non-Macintosh 'name' table strings are being referenced. Please pass this along to Judy.



Regards...



-- Ken



On Feb 20, 2018, at 11:28 AM, Peter Constable <petercon at microsoft.com><mailto:petercon at microsoft.com> wrote:



Thanks, Ken.



Judy in our Fonts team has told me that she got reports of developers that have licensed some of our fonts having issues in Adobe XD running on Mac OS when the fonts didn’t include names for platform ID 1: 3/1 strings were being used, but for the incorrect language. (May have been an app issue or a MacOS/iOS issue.) You may want to consult with your XD team before dropping platform 1 strings.



(Maybe someday all the legacy platform-specific stuff can go away and we just have platform-independent, Unicode-encoded strings.)



But that is a different issue than what is referred to in the spec currently. I’m inclined to delete that and to add (somewhere appropriate) something like this:



“Note: Some applications running on Apple platforms may require a font to contain strings for the Macintosh platform (platform ID 1).”



Or perhaps,



“Note: Newer platform implementations are able to use strings for other platforms. Some applications running on a given platform, however, may still require that fonts include strings for that platform.”





Peter



From: mpeg-OTspec at yahoogroups.com<mailto:mpeg-OTspec at yahoogroups.com> <mpeg-OTspec at yahoogroups.com><mailto:mpeg-OTspec at yahoogroups.com> On Behalf Of Ken Lunde lunde at adobe.com<mailto:lunde at adobe.com> [mpeg-OTspec]

Sent: Sunday, February 18, 2018 3:32 PM

To: opentype-list at indx.co.uk<mailto:opentype-list at indx.co.uk>; mpeg-OTspec at yahoogroups.com<mailto:mpeg-OTspec at yahoogroups.com>

Subject: Re: [mpeg-OTspec] Mac version string in 'name' table





Peter,



I am not sure whether this is an answer to your question, but we (meaning Adobe) have deployed several typeface families whose fonts completely lack Macintosh 'name' table strings, such as Source Han Serif (to include the Google-branded Noto Serif CJK), Ten Mincho (貂明朝), and a non-zero number of open source test fonts. We added the ability of our tools to omit these strings over two years ago, and I briefly wrote about it here:



https://blogs.adobe.com/CCJKType/2015/11/whats-in-a-name-table.html<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fblogs.adobe.com%2FCCJKType%2F2015%2F11%2Fwhats-in-a-name-table.html&data=02%7C01%7Csppatel%40adobe.com%7C0a92665f99974c30f31d08d852c940e4%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637350371619943708&sdata=jzg5LRxn6pNlMIS5eAPbWLhbWCuBfc8LNpOqDkfRxkM%3D&reserved=0>



We have not received any reports whatsoever that would suggest that we would need to add Macintosh 'name' table strings to these fonts. When Source Han Sans (and Noto Sans CJK) Version 2.000 is released later this year, I fully intend to remove their Macintosh 'name' table strings.



Regards...



-- Ken



On Feb 18, 2018, at 12:17 PM, Peter Constable petercon at microsoft.com<mailto:petercon at microsoft.com> [mpeg-OTspec] <mpeg-OTspec-noreply at yahoogroups.com><mailto:mpeg-OTspec-noreply at yahoogroups.com> wrote:





This gem dates at least as far back as October 2002/OT 1.4:







“For historical reasons, some applications which install fonts perform version control using Macintosh platform (platform ID 1) strings from the 'name' table. Because of this, we strongly recommend that the 'name' table of all fonts include Macintosh platform strings and that the syntax of the version number (name id 5) follows the guidelines given in this document.”







Is anyone aware of software that still requires the Mac platform version string to do version checking?















Peter

















------------------------------------

Posted by: Ken Lunde <lunde at adobe.com><mailto:lunde at adobe.com>

------------------------------------





------------------------------------



Yahoo Groups Links



<*> To visit your group on the web, go to:

    http://groups.yahoo.com/group/mpeg-OTspec/<https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fgroups.yahoo.com%2Fgroup%2Fmpeg-OTspec%2F&data=02%7C01%7Csppatel%40adobe.com%7C0a92665f99974c30f31d08d852c940e4%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637350371619953709&sdata=MdIc6hhW50lcfWC3v8kXZiy6BYabh7bWMRez8XUmrwg%3D&reserved=0>



<*> Your email settings:

    Individual Email | Traditional



<*> To change settings online go to:

    http://groups.yahoo.com/group/mpeg-OTspec/join<https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fgroups.yahoo.com%2Fgroup%2Fmpeg-OTspec%2Fjoin&data=02%7C01%7Csppatel%40adobe.com%7C0a92665f99974c30f31d08d852c940e4%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637350371619953709&sdata=GijQkwuez67ck4kWiVqrtenUxbj%2Bd6O2HlwRqv7oSpY%3D&reserved=0>

    (Yahoo! ID required)



<*> To change settings via email:

    mpeg-OTspec-digest at yahoogroups.com<mailto:mpeg-OTspec-digest at yahoogroups.com>

    mpeg-OTspec-fullfeatured at yahoogroups.com<mailto:mpeg-OTspec-fullfeatured at yahoogroups.com>



<*> To unsubscribe from this group, send an email to:

    mpeg-OTspec-unsubscribe at yahoogroups.com<mailto:mpeg-OTspec-unsubscribe at yahoogroups.com>



<*> Your use of Yahoo Groups is subject to:

    https://info.yahoo.com/legal/us/yahoo/utos/terms/<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Finfo.yahoo.com%2Flegal%2Fus%2Fyahoo%2Futos%2Fterms%2F&data=02%7C01%7Csppatel%40adobe.com%7C0a92665f99974c30f31d08d852c940e4%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637350371619963703&sdata=OgePZKs5MlW14LZt8%2F%2BM0wPM1BQF931twUyGV3PeP6I%3D&reserved=0>



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.aau.at/pipermail/mpeg-otspec/attachments/20200907/104150e9/attachment-0001.html>


More information about the mpeg-otspec mailing list