Round decimal values for "instance as master"?

Is there a quick way (or available script) to round the decimal values for the glyph width that is created in the resulting master when it was generated from the “Instance as master” option?

I can do it one by one with a little unit adjustment, but wondering if something font-wide is out there that retains the side-bearing values?


The issue at hand is that the glyph does not have extremum points. If you use metrics keys for both sidebearings, then the width cannot be an integer.

There will be rounding at export time because what’s stored inside the compiled file, is just the advance width.

Thanks for the feedback… apologies if I’m misunderstanding:

In the end, at export, are you saying this is not a problem and all exported instances will be automatically corrected to rounded/whole numbers? In other words, I can leave the decimal width values as is?

Also, there are extremum points in all masters (including the generated from instance one). Am I viewing this wrong?

Screen Shot 2022-06-02 at 11.32.35 AM

I tried this and I never saw decimal numbers. Can you send me the file (and instructions what you did)?

Thanks for looking Georg. Just sent the file. For reference, here are the notes in the email:

Created using Glyphs 2.6.2 on Mac 10.14.5.

I completed the font with just a hairline and black master having all the metrics, kerning, keys, etc set and complete. Then generated a regular master from the regular weight instance (using the “Instance as Master” prompt).

The point is to do some fine tuning of those intermediate weights and be more compatible with producing a variable font family option (had brace layers for a while, but opted to go this route).

Any reason you use a very old version of Glyphs 2? The latest is 2.6.8.

Not in particular… just reviving an older file and hadn’t updated (wasn’t sure if any glitches could appear :slight_smile:

I would recommend to keep the brace layers. Usually you only need adjustments in a small number of glyphs. So all other are redundant data. And just get out of sync if you make changes.

Thanks… I prefer that in general too for simplicity, but I think my concern was variable font compatibility, not having a default Regular master. My (limited) understanding is that it would be better with the additional master, and no brace layers at all.

Does there seem any way to solve the original decimal value issue?

If I’m incorrect, could you point me to best practices/process for producing proper variable fonts with brace layers?

I would build the font with the least redundant data. Adding that extra master might be a preprocessor task when exporting.

So if that’s with brace layers (no Regular master), can a variable font be properly produced?

My experience is limited, and an early test with that setup produced some glitching with the brace layer adjustments not showing up in the variable (found some resolution eventually, but was not confident in it yet).

The variable font works mostly fine without the Regular master. There might be some issues with style linking in Indesign. But while designing, it is fine. You can add the regular master before generating the final fonts.

Thanks. And adding the Regular, unaltered, master just before export will bypass any issues with the decimal width values that were the original issue?

The export will take care of the rounding.