Numbers kerning breaks all kerning (in Office)

Hi, I have a weird problem with my kerning in office apps.
I’ve made a multilayer color font.
now, when I export an otf where I kerned only the letters, it works fine…
when I export an otf where I kerned only the numbers, it works fine…
but when I export them kerned together in one file, the kerning doesn’t work at all
(see example below).
*the right kerning is tight in purpose.

Is that a known problem?
What can I do to fix it?

Office is very picky about the kerning.

Do you have kerning between the “O” and the “N”? That shouldn’t be needed. Only asymmetric shapes like “T” + “o” should have kerning. Basically all pairs where one glyph is flat (like the “N” or “I”) shouldn’t be kerned.

What exactly is not working in the 3rd picture?

PowerPoint is a special case with very bad support for OpenType, to the extent that I’d say it’s incompatible with OpenType, and you can hack your way around it with varying degrees of success.

But first ask yourself if you want to support legacy apps like PowerPoint at all. Is it really so important? If your answer is yes, try these:

  1. Use TTF, not OTF for PowerPoint.
  2. The problem is that kerning is split over multiple lookups by Glyphs, based on category, and PowerPoint, if at all, only honors the first lookup. So you can try giving all glyphs that kern the Letter category.
  3. If that doesn’t work, try the Kern Flattener script in the mekkablue scripts. Available in the Plugin Manager. It will create a copy of your font, flatten (expand to glyph-glyph kerning only) and subset your kerning. Export with a different name.

Thank you for the help.
Can you explain how do I give all glyphs that kern the Letter category?
what do I need to do in order to do that?
(the Kern Flattener script was already applied)

Another (rather more annoying) option to achieve kerning with only one lookup:

  1. Export your font with normal kerning to some random location
  2. Go into the Temp folder of Glyphs (Script > Open Scripts Folder > Navigate to Temp) and find the features.fea file for each exported font.
  3. In the fea text file, delete everything except the kern feature. Also delete the splits into multiple lookups, you can simple remove the three or so lines it takes to close and open a new lookup. Your new fea file should now start with lookupflags IgnoreMarks; and end with the last pos line of your kern feature. Save this file.
  4. Two options: 4.1. for every exporting instance in your font, add an Add Feature custom parameter. Set it to kern and paste the text from your corresponding fea file into the text field. Glyphs 3.2 is required for this.
    Or option 4.2: create a duplicate of your file. Delete all kerning. Add a kern feature to Font Info > Features. Paste the fea code for one instance into the feature. Only activate the corresponding exporting instance and export it. Then repeat for the next instance, you need to export one at a time.

Reference: Replace/Add Feature for kerning - #2 by GeorgSeifert
Hope this helps.

1 Like

Select the glyphs, choose Edit > Info for Selection.

Then you do not need to change the category. These two things are mutually exclusive. The idea of unifying the glyph category is to achieve a single lookup in the GPOS table. Whereas Kern Flattener creates a kern table.

I added a Custom Parameter (“Keep Kerning in one Lookup”) to force one lookup. At least for the first two looks (default and latn). A lot other script needs their own lookup.

1 Like

Amazing, thank you! Will this only appear in 3.2?
This would have saved me many, many hours last week :grin:

Sometimes it is more efficient to get on my nerves than to build a workaround :disappointed_relieved:

I did my best :wink:
Thanks a lot for making this work, I will surely need this again soon. Will it be in a cutting-edge 3.1 or only the next 3.2?

only 3.2