In feature 'kern' lookup 'kern' positioning rules cause an offset overflow (0x123c6) to a lookup sub

Vasil Stanev
Vasil Stanev Posts: 775
edited January 2021 in Font Technology
Hello, a client asked me to modify the Google font Raleway. She (a graphic designer) needed the basic numerals to be different. After some back and forth of me explaining copyright, we desided to at least test it. She knew that using this modified version is not OK but wanted to at least see what it will look like.

I opened the font in my legal copy of FontLab 7 and replaced the glyphs with the .lf ones.I did no kerning and on export, I got this error message:

<p>FEA compiler error: [F] In feature 'kern' lookup 'kern' positioning rules cause an offset overflow (0x123c6) to a lookup subtable</p><p>FEA compiler error: [F] Fatal error in font "C:/Users/Admin-XXXXX/Desktop/Raleway-BoldItalic-ED.vfc" in file "" at line 17882</p><p>Features compilation failed. Trying without the [kern] feature</p><p>Font has been successfully exported to the following folder:</p><p>C:/Users/Admin-XXXXX/Desktop/Baleway/OpenType-PS</p>

I had no trouble testing the font in my copy if InDesign 2021, but she couldn't get it to replace the old unedited version on her Mac. I changed the name in the font info to "Baleway", still she couldn't do anything on her side, so the job broke down. But I am still curious of what could have caused the error message. Maybe me replacing the glyphs broke down something like the other types of numerals that were linked to them as components?

Comments

  • John Hudson
    John Hudson Posts: 3,229
    Hello, a client asked me to modify the Google font Raleway. She (a graphic designer) needed the basic numerals to be different. After some back and forth of me explaining copyright, we desided to at least test it. She knew that using this modified version is not OK but wanted to at least see what it will look like.
    Raleway is released under the Open Font License. It is open source software, so why wouldn't it be okay to make and use a modified version?

    Regarding the issue you report, this is probably due to opening and decompiling the existing font. The error message simply means that the kern data is too large to fit into a single GPOS subtable, so it would be necessary to insert a subtable break in the kern feature fea code.

    If you open the OTL Features panel in FL7, check to see if it includes a kern feature. If yes, delete this. That should cause FL7 to rewrite a kern feature when you export a font, and it should do so in a way that breaks up the data into compatible subtables.

    In general, it is always a good idea when working with an open source font to see if actual sources are available, rather than decompiling a binary font, which may not always recompile cleanly. Google Fonts tend to have source repos on GitHub: here is the one for Raleway, which includes sources in .glyphs format that can be opened in FL7.