Some font makers decide on a naming scheme that ends up with names like "Regular Italic" instead of "Italic".
This is sometimes problematic when working with InDesign character styles where Italic ≠ Regular Italic.
As long as the license allows i'd like to change specific entries in the 'name' table to change "Regular Italic" into "Italic".
What i found out myself:
- Usually there's a set of entries for Mac and Win separately.
- nameID 2 is where the font subfamily name is stored, it should only be used for the basic 4 styles: R,B,I,BI
- for compatibility with software that expects only 4 styles per family name nameIDs 16 and 17 are supposed to be added for extended families
- fonts sometimes have a nameID 17 just in the Win set and the value is the same as nameID 2 in the Mac set (mac nameID 2 = "Regular Italic", win nameID 2 = "Italic", win nameID 17 = "Regular Italic" and sometimes something is appended to win nameID 1 and it ends up like "FamilyName Regular" while the mac nameID 1 is still just "FamilyName" ), this is what it looks like in my fonts i export with Glyphs
- i would use fontTools.ttLib to do this
I also read that the nameIDs 16 and 17 are of higher priority. So changing the nameID 16 to my liking or adding it to the table would be safe? What would be the best way to approach this?
Comments
Q: To successfully change the subfamily name and not break compatibility with Windows apps should i modify the name table entries: nameID 2, 16, 17 or only some of them is enough?
For the "regular" font in a family in particular, InDesign uses some heavy heuristics to decide which is regular, if there is no font named regular in the family.
Also, as most here probably know: "Regular Italic" is simply not a valid value for nameID = 2. For nameID = 17, it is a valid value... but might confuse InDesign anyway.
InDesign's style linking may rely on metadata other what you might expect. The logical thing (in my mind, at least) is to rely on having the same Windows nameID 2, plus style flags. Because this was not seen as reliable enough, at least historically, InDesign did some other things.... Net result is, I would not be shocked if a font with a style name of "Regular Italic" for nameID 17 does not get picked as the italic match for the Regular, by InDesign, even if nameID 2 and style flags are set correctly.
Fonts. Can’t live with them, can’t live without them....
In an extended family in which you want all members to share a common family name in modern apps, you might need to set NameID16 for at least some family members that will have different NameID1 for 4-style linking. E.g.
ID1 = FontBar
ID2 = Regular
ID1 = FontBar
ID2 = Italic
ID1 = FontBar UltraBlack
ID2 = Regular
ID16 = FontBar
ID17 = UltraBlack
ID1 = FontBar UltraBlack
ID2 = Italic
ID16 = FontBar
ID17 = UltraBlack Italic