> In ftoutln.c there is a function called FT_Outline_Embolden().  This
> is used to create artificial emboldening, and is used when
> fontconfig requests emboldening for fonts that don't have a bold
> face available.  Near the end of this function are these two lines,
> which actually perform the emboldening, in the x and y directions:
> 
> outline->points[n].x = v_cur.x + strength + in.x;
> outline->points[n].y = v_cur.y + strength + in.y;
> 
> Emboldening in the y direction can happen in fractions of a pixel,
> and this ends up being only in the "up" direction.  The result of
> this is a blurry fringe on the tops of letters.  While this may be
> technically correct, I'm wondering if *anyone* actually thinks this
> looks nice.

The code has been written in a quite generic way.  IMHO, you need both
horizontal and vertical emboldening for larger font sizes.  I fully
agree that it is suboptimal for small font sizes which are going to be
used in combination with other fonts.

> In my patches, I disable the y direction completely, and the
> aesthetic improvements are dramatic, in my opinion.  Is this
> something that can be done in Freetype instead?  Or perhaps can the
> function be split into two?

It can't be done currently.  Please suggest a new API.  And provide a
patch (with a ChangeLog entry) :-)


    Werner

_______________________________________________
Freetype-devel mailing list
Freetype-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/freetype-devel

Reply via email to