Skip to content

Remove autohinting#13

Merged
loudifier merged 14 commits intomainfrom
hinting
May 7, 2025
Merged

Remove autohinting#13
loudifier merged 14 commits intomainfrom
hinting

Conversation

@loudifier
Copy link
Copy Markdown
Owner

gftools uses fontmake, which uses ttfautohint by default to autohint .ufo sources when building .ttf files. Unfortunately, that hinting has some issues with ClearType at small sizes and some things like the uneven feet of m showing up even at larger sizes. Removing hinting results in less crisp appearance at small sizes but a nicer look overall. See #11 for some examples.

While experimenting with hinting and the build process, some differences were found between FontForge's output of .ufo and .ttf formats and those of sfdlib and gftools, respectively. An issue in sfdlib causes points outside a glyph's bounds to be clipped, resulting in #12. FontForge's direct .ttf output fails many fontbakery tests, but its .ufo output doesn't have sfdlib's clipped glyphs and with a little manual cleanup passes fontbakery when built with gftools.

The updates in this PR change the build process from:

  • FontForge .sfd sources
  • sfdlib sfd2ufo > .ufo sources
  • gftools/fontmake with ttfautohint > .ttf output

to:

  • FontForge .sfd sources
  • FontForge command line export > .ufo sources
  • .ufo cleanup with xmlstarlet
  • gftools/fontmake with no autohinting > .ttf output

fixes #11
fixes #12

@loudifier loudifier merged commit 57e5665 into main May 7, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Omega cut off Distorted characters when subpixel antialiasing (ClearType) is used

1 participant