https://git.reactos.org/?p=reactos.git;a=commitdiff;h=fabbd7c1c162dc4dec8a23...
commit fabbd7c1c162dc4dec8a23f8470cafb8871d4675 Author: Katayama Hirofumi MZ katayama.hirofumi.mz@gmail.com AuthorDate: Fri May 24 08:24:21 2019 +0900 Commit: GitHub noreply@github.com CommitDate: Fri May 24 08:24:21 2019 +0900
[WIN32SS][NTGDI] Don't use FLOAT for orientation (#1574)
Addendum to 0137096. Use 16.16 fixed-point values instead of FLOAT. CORE-15838 --- win32ss/gdi/ntgdi/freetype.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-)
diff --git a/win32ss/gdi/ntgdi/freetype.c b/win32ss/gdi/ntgdi/freetype.c index 3dc10bc63fc..eef7cb3e5c0 100644 --- a/win32ss/gdi/ntgdi/freetype.c +++ b/win32ss/gdi/ntgdi/freetype.c @@ -3469,7 +3469,6 @@ ftGdiGetGlyphOutline( FT_Bitmap ft_bitmap; FT_Error error; INT left, right, top = 0, bottom = 0; - FT_Angle angle = 0; FT_Int load_flags = FT_LOAD_DEFAULT | FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH; FLOAT eM11, widthRatio = 1.0; FT_Matrix transMat = identityMat; @@ -3599,14 +3598,8 @@ ftGdiGetGlyphOutline( if (orientation) { FT_Matrix rotationMat; - FT_Vector vecAngle; DPRINT("Rotation Trans!\n"); - angle = FT_FixedFromFloat((FLOAT)orientation / 10.0); - FT_Vector_Unit(&vecAngle, angle); - rotationMat.xx = vecAngle.x; - rotationMat.xy = -vecAngle.y; - rotationMat.yx = -rotationMat.xy; - rotationMat.yy = rotationMat.xx; + IntEscapeMatrix(&rotationMat, orientation); FT_Matrix_Multiply(&rotationMat, &transMat); needsTransform = TRUE; }