freetype-devel
[Top][All Lists]
Advanced

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

Re: [Devel] BCI no longer used by default


From: Werner LEMBERG
Subject: Re: [Devel] BCI no longer used by default
Date: Fri, 19 Nov 2004 11:29:35 +0100 (CET)

> In fact, even if it is difficult to compare both drawings (with
> splines in the Windows snapshot I sent earlier and the raw lines
> between the online points of fontforge), I consider the general
> shape are correct, with the exception of a general offset toward
> bottom of about 0.45 pixel.

Found it!  George has added support for vertical phantom points, and
he mostly of his code is very similar to the horizontal case.
Consequently, he did the following in TT_Process_Simple_Glyph (in file
ttgload.c):

    /* eventually hint the glyph */
    if ( IS_HINTED( load->load_flags ) )
    {
      FT_Pos  x = zone->org[n_points-4].x;
      FT_Pos  y = zone->org[n_points-2].y;


      x = FT_PIX_ROUND( x ) - x;
      y = FT_PIX_ROUND( y ) - y;
      translate_array( n_points, zone->org, x, y );

      ...

Unfortunately, the vertical shift here is wrong.  Changing the code
back to

    /* eventually hint the glyph */
    if ( IS_HINTED( load->load_flags ) )
    {
      FT_Pos  x = zone->org[n_points-4].x;


      x = FT_PIX_ROUND( x ) - x;
      translate_array( n_points, zone->org, x, 0 );

      ...

gives the expected results.

This fix is now in the CVS.  Please test!

And a big thank you to all of you who provided detailed bug reports!


    Werner



reply via email to

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