astiopin / sdf_atlas

SDF font atlas generation tool

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Missing kerning pairs

oomek opened this issue · comments

Some kerning pairs are not present in font.js file. For example Va Ve Wa We AV etc.
Additionally some fonts are not producing any output like BarlowCondensed-SemiBold.ttf
Update: Barlow condensed 1.408 didn't work, but a newer 1.422 downloaded from github worked, odd.

It seems like the modern kerning tables are unrecognised. I can only generete (still incomplete) kerning tables when I export the font in FontLab with legacy kerning tables ticked in the ttf profile.

Is this repo still maintained? I would really like to implement your method as it gives amazing results, but those missing kern pairs are a deal breaker. It seems like the atlas generator is not processing kerning classes.

Font managing is pretty basic at the moment. Hinting on modern fonts with 2d glyph placement is not supported. You can use a full featured font library like freetype (freetype) for font loading.

I actually want to get rid of freetype so I can scale text smoothly. I was experimenting with harfbuzz recently and It nicely returns proper kerning for ttf and otf for each glyph pairs, but it's a pain in the back to do it in js. I need to rewrite the displaying function in c++ to see how it looks.

You can write TTF reading routine yourself. It's complicated but not THAT hard. I've used apple and microsoft spec pages for writing my TTF parsing library. Look for the 'kerx' table. Modern fonts store kerning there.

Actually most of the fonts I use store kerning in gpos table, hence the need for harfbuzz. I think that there is no need to reinvent the wheel in this particular situation. Maybe harfbuzz could also be used to extract the glyph data.

Yes, using harfbuzz would probably be the best way.