For variable export of italic-only (script) family, is it possible to explicitly set macStyle and fsSelection?

I’m building a script font with the Glyphs export.

As I understand it, a script font, with an italic angle, should be marked as “Italic”, even if it has no Roman/upright counterpart. Specifically, it should have the head.macStyle and OS/2.fsSelection “Italic” flags set. (Please correct me if I am wrong on that, though.)

I can make this happen for static exports, by checking the “Italic” Style Linking boxes, even without adding anything to the text field (aside from the Bold style, which has Regular in the text field, and both checkboxes checked):

After some experimentation, it seems like setting the “Name” field of the Variable Font Export to Italic actually does the trick. The resulting macStyle and fsSelection fields appear to indicate that the font is italic.

However, that solution feels fragile: it is not explicit, and could therefore be easy to accidentally overwrite in the future. It’s also not particularly obvious. I would expect there to be a custom parameter such as “Is Italic,” for this purpose. There is actually a parameter Italic Style Linking, but the description of it only refers to the STAT table, and also says, “Should not be added to (exclusively) italic fonts.”

Is there a better / more explicit way to mark a VF export as Italic? If not, does it seem like something that might be valid to add?


Thanks, as always, for the incredible software!

The Italic Style Linking is for adding Format 3 entries in STAT, which are designed to link from the regular to the non-regular. That’s why you should not add it to an exclusively italic font.

The ‘Italic’ naming is a temporary solution, yes.

The Italic Style Linking is for adding Format 3 entries in STAT, which are designed to link from the regular to the non-regular.

But it also sets useful Italic metadata, no? It changed the head.macStyle and OS/2.fsSelection for exports, once I checked that checkbox.

you should not add it to an exclusively italic font

It’s hard to find firm information one way or another, but in the OS/2:fsSelection portion of the OpenType spec, for the Italic bit 0, it says:

Font contains italic or oblique glyphs, otherwise they are upright. and Bit 0: The setting of bits 0 must match the setting of bit 1 in the macStyle field of the 'head' table.

So, to me, that seems to indicate that an exclusively italic font should be marked as italic, even if it has no roman counterpart. After all, an exclusively italic font might be given an upright counterpart, some day.

Or, is there information that contradicts this opinion? I’m happy to proven wrong; I’m just trying to learn what the best practice is, and how to make that work in Glyphs exports.

Thanks so much!

I was talking about the Italic Style Linking (Format 3 entry in STAT), which is supposed to be in the regular/upright only.

1 Like

Ah, got it, that makes sense! I’m just trying to understand what is useful vs not in an italic-only font, and I appreciate the help.

So, if I do want Italic metadata set in OS/2 and head tables – but not in the STAT table – are there custom parameters that I can use to set just those bits of data?

No. Not at the moment.

1 Like

Got it – thanks for the information!

Best thing to post-process. Look at the post production scripts in the mekkablue scripts for how to do it.

1 Like