The filter for x-height breaks the x-height in exported fonts

I made some experiment and added the filter that hide the x-height for Arabic script. The idea was to separate the metrics within the project, like use x-height for Latin / Greek / Cyrillic / Georgian etc, and use Loop / Tooth / Joining Line for Arabic.

As a result, the exported fonts had the x-height metric set to -1 (and also with negative overshot). I think it doesn’t seem like correct behaviour. Can you check it please?

Project file:

Exported font (OTF, reopened in Glyphs):

You need at least one x-height without a filter. Only those are considered for the vertical metrics tables.

Yeah, I realised it too. For now, I use that filter only at the design phase and remove it when the design is complete.

Georg, here’s the next question that arises.

Do custom metrics with filters only work as guides for design, and after export they won’t become the alignment zones for PostScript hinting? For example, the Small Caps custom metric with filter “Case is Small Caps” – such a metric seem to disappear from the exported fonts. If so, do I need to manually remove all the filters before exporting so that all these metrics become alignment zones as intended? If so, can this be automated in the Export tab in Font Info window?

I’m thinking about to allow a xHeight with a filter as long that the filter is allowing a lowercase “a” so that you can hide it in other scripts.

I plan to use filtered metrics to build a Base table. But otherwise they are design guides.

1 Like

Thanks for adding this!
The only issue is the x-height loses its overshot value after export.

You mean if you export the file it will directly loose it or when you open the .otf?

When reopening exported .otf back in Glyphs

I fixed it. Thanks