freetype-devel
[Top][All Lists]
Advanced

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

Re: [ft-devel] Autohinter: stem darkening, first rough prototype


From: Dave Arnold
Subject: Re: [ft-devel] Autohinter: stem darkening, first rough prototype
Date: Tue, 25 Aug 2015 15:50:25 -0700
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0

Here's what I recall about the darkening curve.

The shape of the curve was largely determined experimentally, but there are 
certain principles. It should be monotonic. It should have a minimum of around 
.4 or .5 pixels. It should go to zero at around 2 pixels. It is important that 
fonts with stems above that size are unaffected by darkening. This is keeping 
with the minimal hinting philosophy and performance can be improved if the 
darkening amount is zero. The slope of the function should be gradual so that 
bold (or semibold) always remains heavier than regular. I think it is important 
that darkening is introduced gradually as the size decreases, but can get more 
aggressive at smaller sizes. My opinion is that the ideal function is a curve, 
and the piecewise-linear nature of the implementation approximates this but is 
easier to implement.

I hope that helps.

-Dave

On 8/23/2015 9:06 PM, Werner LEMBERG wrote:
I haven't yet looked closely at the new code, but I think that the
original one in function `cf2_computeDarkening' (in file
`cf2font.c') is quite straightforward – and it is well
commented :-)
I do not get why this function should be piecewise linear, rather
than just linear.  Why can't we just use something like this?

darkenAmount = 0.5 pixels - ( scaledStem / 4 )
Dave Arnold explained this to me some years ago.  However, I no longer
can remember why Adobe introduced this feature.

Dave, can you please tell us the reason (again)?


     Werner




reply via email to

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