ecere/LFBDisplayDriver (fonts): Fixed font transform not being reset for different...
authorJerome St-Louis <jerome@ecere.com>
Wed, 14 Nov 2012 20:23:07 +0000 (15:23 -0500)
committerJerome St-Louis <jerome@ecere.com>
Wed, 14 Nov 2012 20:39:08 +0000 (15:39 -0500)
(Non-italic fonts being italic when another instance of that font is made italic)

ecere/src/gfx/drivers/LFBDisplayDriver.ec

index 1dec9c2..8995f8e 100644 (file)
@@ -3056,8 +3056,15 @@ public class LFBDisplayDriver : DisplayDriver
                         matrix.xy = (FT_Fixed)( 0.3 * 0x10000L );
                         matrix.yx = (FT_Fixed)( 0.0 * 0x10000L );
                         matrix.yy = (FT_Fixed)( 1.0 * 0x10000L );
-                        FT_Set_Transform(fontEntry.face, &matrix, &pen );
                      }
+                     else
+                     {
+                        matrix.xx = (FT_Fixed)( 1.0 * 0x10000L );
+                        matrix.xy = (FT_Fixed)( 0.0 * 0x10000L );
+                        matrix.yx = (FT_Fixed)( 0.0 * 0x10000L );
+                        matrix.yy = (FT_Fixed)( 1.0 * 0x10000L );
+                     }
+                     FT_Set_Transform(fontEntry.face, &matrix, &pen );
                      FaceSetCharSize(fontEntry.face, size);
                      font.height = ((fontEntry.face->size->metrics.height) >> 6); //* y_scale;
                      // printf("Font height is %d\n", font.height);