freetype-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ft-devel] ttfautohint: How to install


From: Werner LEMBERG
Subject: Re: [ft-devel] ttfautohint: How to install
Date: Sat, 25 Jun 2011 07:56:42 +0200 (CEST)

> Just posted screenshots of ttfautohint output under DirectWrite
> (Cleartype & Grayscaling).

Thanks again for your invaluable help in testing ttfautohint!

> Interesting. imo, generally the ttfautohint output is superior to
> the original fonts' output, though there are some glitches, e.g. dot
> accents are malformed.

In general, composite glyphs will be inferior with ttfautohint; this
is unavoidable.  It will take some time until I've implemented an
option to pre-hint all glyphs (and thus resolving the composites) to
improve that at the cost of larger output files.

> Do you think it's possible that the autohinter can be tweaked to
> lessen the effects of the aggressive vertical filtering of GDI?  or
> is it already at the limits of what's possible for GDI?
>
> The feedback i'm getting from my screenshots is that the ttfautohint
> output is overall superior under DirectWrite to the original hinted
> fonts.  Just seems to be a little extra 'something' needed to get
> the GDI sorted too :)

Please try the current git snapshot and play with the options
--hinting-range-min and --hinting-range-max.

Currently, the default value for hinting-range-max is 1000; this means
that the autohinter tests all ppem values up to 1000 to find hinting
sets.  However, the larger the ppem, the larger the blue zones.  And
by design, the autohinter ignores blue zones which are larger than 3/4
pixels.

If you limit hinting-range-max to a value where the blue zones are
still handled, the generated bytecode uses this hinting set for all
larger sizes also.  Finding a good value for hinting-range-max has to
be done with trial and error, but a waterfall already indicates bad
sizes, so hinting-range-max must be less than that).

The adverse effects of having a very small value for hinting-range-max
must be analyzed also; it essentially means that some horizontal
segments which at larger ppem values no longer align are still treated
as edges.  Maybe it helps if I introduce options to manipulate the
`gasp' table, making it possible to set an upper limit for applying
hints.

Finally, I don't know yet whether it makes sense to directly
manipulate the 3/4 pixels limit (perhaps by deactivating this
threshold completely).  This needs further testing.


    Werner



reply via email to

[Prev in Thread] Current Thread [Next in Thread]