What is the correct syntax for “Name Table Entry” in Glyphs 3?
So far (in Glyphs3):
nameID 4 platformID 3 encID 1 langID 1033; nameString
Results in:
nameID 0, platformID 4, encodingID 0, languageID 3, nameString
What is the correct syntax for “Name Table Entry” in Glyphs 3?
So far (in Glyphs3):
nameID 4 platformID 3 encID 1 langID 1033; nameString
Results in:
nameID 0, platformID 4, encodingID 0, languageID 3, nameString
I want to overwrite Microsoft ID 4 “Full font name” with ID 6 “Postscript name” for better compatibility with Opentype CFF.
The spec explicitly stated that the cff and name table doesn’t need to match.
And you don’t need a name table entry to set the name id4 and 6. Use the postscriptFontName and postscriptFullName setting in Exports > General
And the Name Table Entry has the following syntax. You only need to set the first item, the others will fall back to the default.
<nameID> <platformID> <encID> <langID>; <nameString>
So in your case (don’t include the keys):
4; nameString
I know I don’t need a name table entry to set IDs 4 and 6; I merely want to overwrite ID 4 when exporting CFF-flavoured Opentype.
How would I write all ID:s if I don’t want to resort to default values?
You write the numbers as you did, just not the keys:
4 3 1 1033; nameString
Ah, finally! Thank you! ![]()
He wrote it in his first answer already. I would even just write 4; xxxx and not specify language and platform explicitly.
Yes, now it looks pretty obvious. But, seeing the values in plain numbers made the whole ordeal more pragmatic.
Yes, that would work in this particular case. But for reasons not mentioned in this thread, I find it more valuable to know how to change all the name tables individually.
There’s a bug with this:
I specified 257 and 259 as the names to be replaced. Glyphs does this correctly, but the existing feature names are set to a much higher name ID. I originally wanted to overwrite:
Schoolbook Lowercase → Double-story, straight x (not storey, because client is in US)
Round A, E → Straighter A/E
Those don’t work like this because the nameIDs 256+ are dynamically generated. You would need to replace the feature, for now.