Adding a “capabilities database” to the FreeType auto-hinter
- Mentors
- Werner Lemberg
- Organization
- FreeType
- Technologies
- c, linux
- Topics
- Text Rendering
It is easy to render fonts well on screens with high pixel density. However, straightforward algorithms run into problems when rendering with few pixels available. For example, fonts where the capital “O” is taller than the capital “T”, or vice versa, should have these characters rendered at the same height when few pixels are available to avoid bumpy-looking text. Many modern font formats contain “hints” in these cases, which tell the renderer how it should align each symbol in the font to the pixel grid to create the most legible and consistent rendering. However, not all fonts and font formats contain hints. In these cases, the auto-hinter can be enabled, which analyzes the shapes in the font to fix some common issues that would normally be fixed by manually added hints. This project aims to further improve this process by adding corrections for specific letters, such as “i”, where the dot can merge with the stem, and “ñ”, where the tilde can lose its shape and become flat. These changes would be described in a capabilities database with a format designed as part of the project.