Open mikemorris opened 9 years ago
Good questions, I'll add this tidbit:
FreeType can now use the HarfBuzz library to greatly improve the
auto-hinting of fonts that use OpenType features: Many glyphs
that are part of such features but don't have cmap entries are
now handled properly, for example small caps or superscripts.
Define the configuration macro FT_CONFIG_OPTION_USE_HARFBUZZ to
activate HarfBuzz support
http://sourceforge.net/projects/freetype/files/freetype2/2.5.3/
Opentype.js has also been working on basic GPOS parsing: https://github.com/nodebox/opentype.js/issues/19
Current thinking is to implement something like Harfbuzz's reference_table
method to extract and dump the binary SFNT table data while node-fontnik has the font open in FreeType, and write a custom backend for HarfBuzz to read this data by itself rather than needing to open up a font file at shaping time. @lbud is digging into how this will work.
I started working on porting pomax/A-binary-parser-generator to Node.js with Browserify today to try extracting and parsing the shaping tables in JavaScript, but I think that approach will end up being slower, more difficult and result in less useful data (JavaScript objects instead of binary data HarfBuzz expects) than just doing this through FreeType.
I just posted a few comments here while I actually intended to post them to issue #95. I have just deleted them from here and posted them to the correct issue. Sorry.
tl;dr Can we use ICU or HarfBuzz to extract shaping and kerning tables from a font?
From discussion with @nickidlugash on adding kerning support: