patch for font glyph transformation in freetype.c

Dmitry Timoshkov dmitry at baikal.ru
Sat Oct 4 02:20:12 CDT 2003


<Dave_Belanger at cimmetry.com> wrote:

> +    /* Extra transformation specified by caller */
> +    if (lpmat) {
> +        FT_Matrix extraMat;
> +        extraMat.xx = FT_FixedFromFIXED(lpmat->eM11);
> +        extraMat.xy = FT_FixedFromFIXED(lpmat->eM12);
> +        extraMat.yx = FT_FixedFromFIXED(lpmat->eM21);
> +        extraMat.yy = FT_FixedFromFIXED(lpmat->eM22);

My tests show that Windows and Freetype disagree about diagonal
elements of the transformation matrix. In order to make it
work like in Windows we need to reverse the xy/yx assignment:

extraMat.xy = FT_FixedFromFIXED(lpmat->eM21);
extraMat.yx = FT_FixedFromFIXED(lpmat->eM12);

P.S.
Dave, thanks for your great work! I'm just curious, what kind
of application you are trying to run under Wine?

-- 
Dmitry.





More information about the wine-devel mailing list