Re: Implement font glyph rotation
On Thu, Feb 06, 2003 at 09:50:57AM -0500, Warren_Baird(a)cimmetry.com wrote:
ChangeLog:
Add support for font glyph rotation in GetGlyphOutline.
Description:
Fixed bad angle conversion from tenths of degree to FT_Fixed on big-endian machines.
Fixed bad calculation of the gmCellIncY bounding box field in the case of a rotation. (just imagine what you would get as result from "-(vec.y+63) >> 6" when vec.y is zero... what we expect really is zero, not -1).
Fixed wrong rotation matrix used to transform the outline.
Rotate each point of the outline before it gets converted by FTVectorToPOINTFX in the GGO_NATIVE case.
Warren Baird : Warren_Baird(a)cimmetry.com Dave Belanger
diff -ur clean/wine/dlls/gdi/freetype.c wine/dlls/gdi/freetype.c --- clean/wine/dlls/gdi/freetype.c 24 Jan 2003 15:12:16 -0000 1.1.1.3 +++ wine/dlls/gdi/freetype.c 28 Jan 2003 18:37:34 -0000
@@ -1510,7 +1510,7 @@ if(font->orientation) { FT_Matrix matrix; matrix.xx = matrix.yy = pFT_Cos(angle); - matrix.xy = -pFT_Sin(angle); + matrix.xy = pFT_Sin(angle); matrix.yx = -matrix.xy;
pFT_Outline_Transform(&ft_face->glyph->outline, &matrix);
Hi, Are you sure about this hunk? Iirc there was a vesion of FreeType that incorrectly swapped the meaning of matrix.xy and matrix.yx, but as I understand it this has now been corrected. Which version of FreeType have you been using? We could probably add a run time check to work around this bug if need be. Huw.
participants (1)
-
Huw D M Davies