Tuesday, January 5, 2010

Fv3 needs fonts

My descent into fonts has traveled far and wide. Tim Taylor's compact mobile font format is nice, but in the end I chose a more rigorous route for a larger number of open avenues into future work. I chose to read the True Type / Open Font file format directly.

Font designers tend to release their work in the TTF/OTF file format -- for example on "dafont" or the "open font library". So reading this format directly in an efficient and effective way permits a wide open variety of applications for font glyph data -- as it should be.

This fits into the Fv3 model for a static & dynamic tool chain. It will be able to get fast font glyph data dynamically at runtime, or as part of a tool invocation at design time in the construction of relatively static products. Both options are fast enough to keep all doors open to possible routes into tool and application structure.

There's a reason why few venture into the TTF/OTF reading & writing territory. The specification is not as bad as SSL, but it's incomplete or just plain broken in all the most critical places. So I have depended heavily on George Williams' FontForge and David Turner, Robert Wilhelm, and Werner Lemberg's FreeType codebases to illuminate the dark corners.

And I'm fairly done. Whew. That was a long walk. Twelve days since Christmas according to Google's lovely updates feed.

The image above shows a Java2D display of the font data (from fv3-font inspector). Next comes 3D on JOGL.

No comments: