So I’m quite a newbie. Creating my first font for almost 2 years now s a hobby. I got a little crazy with kerning pairs. Created over 15K kerning pairs. Way too much, off course. I ran into the export error: Coverage offset overflow (0x1004c) in pair positioning.
I get this error when I go over 15868 kerning pairs in Glyphs 1.4.4.
So I decided to start using group kerning! That reduced the kerning pairs quite rapidly! Just testing to export the font with the still massive amount of approximately 14K pairs. Under the amount of the magic number of 15868 pairs, right. So it should work, I thought But no go.
In Glyphs 1.4.4 I get the following error: GPOS feature ‘kern’ causes overflow of offset to a subtable (0x2796e)
In Glyphs 2.0 beta I get this error: Coverage offset overflow (0x18f80) in pair positioning.
How to proceed? I tried reducing the amount of (group) kerning pairs to around 6K, and finally it exports nicely.
My question: why is there a difference between the amount of possible pairs with and without group kerning?
The problem is that your Kerning information gets compiled into a binary OpenType table called GPOS (glyph positioning). And each table cannot be larger than 64k (hex FFFF). Especially group to single and single to group kerning are problematic because they get translated to many single to single pairs, and will thus often increase the size of the table beyond its limit. Group to group and single to single are usually not much of a problem.
It is more complex than just the mere number. It also depends on the size of your kerning groups and the number of exceptions. Exception-to-class and class-to-exception kerning pairs can blow up your GPOS table. And interpolated kerning always has way more exceptions.
Perhaps you can try and:
get rid of unnecessary kern pairs:
there are scripts for deleting small kerning pairs
see if rare symbols like lozenge are kerned with bullet or the like
take some glyphs out of groups, e.g. ldot does not need a right kerning group
I am encountering a similar problem in the current version of Glyphs 2.4.1 (942). When exporting the same fonts from the same file in an older version of Glyphs – 2.3 (895) in my case – the fonts are generated just fine.
There was a change in the way interscript kerning exceptions are resolved, which fixed a problem where certain kerning exceptions would not be accessible. Depending on the structure of your groups and the number of exceptions, it can also lead to a larger GPOS table, though.
You can export with both v.895 and the current version, and compare or diff the features.fea in the Temp folder to see what changed exactly.
Try Use Extension Kerning or separate kernings by script. Toshi has scripts in his repo for the latter.
I could not resolve my problem. But I noticed that if I press in Kerning table Compress in any font, doesn’t matter which one, report and problem will arised everytime. Seems to me it problem with new version, maybe the change of interscript kerning resolved something, but make problem on the other side
had a similar error while exporting (Coverage offset overflow (0x120ea) in pair positioning
) today with glyphs version Version 2.4 (939) today. Tried to export the same font with version Version 2.3 (895) and exported the font without a problem. hope that helps.