[FREETYPE][FTFD][NTGDI] Split FT_Bitmap_Convert hack (#7628)

Our FT_Bitmap_Convert function had a hack to make the
bitmap image compatible to ReactOS. I think the hack on
FT_Bitmap_Convert should be separated from our font
engine.
JIRA issue: CORE-16047
- Add FT_Bitmap_Convert_ReactOS_Hack function, that is
  based on FT_Bitmap_Convert, and split the hack of
  FT_Bitmap_Convert.
- Use FT_Bitmap_Convert_ReactOS_Hack in
  IntGetBitmapGlyphWithCache function instead of
  FT_Bitmap_Convert.
- Modify ftfd.spec to add 
  FT_Bitmap_Convert_ReactOS_Hack.
This commit is contained in:
Katayama Hirofumi MZ 2025-01-22 10:57:40 +09:00 committed by GitHub
parent 0e01cbc6cd
commit bb7cf5a5b7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 79 additions and 13 deletions

View file

@ -6,6 +6,7 @@
@ cdecl FT_Attach_File ()
@ cdecl FT_Attach_Stream ()
@ cdecl FT_Bitmap_Convert ()
@ cdecl FT_Bitmap_Convert_ReactOS_Hack ()
@ cdecl FT_Bitmap_Copy ()
@ cdecl FT_Bitmap_Done ()
@ cdecl FT_Bitmap_Embolden ()

View file

@ -3852,7 +3852,8 @@ IntGetBitmapGlyphWithCache(
BitmapGlyph = (FT_BitmapGlyph)GlyphCopy;
FT_Bitmap_New(&AlignedBitmap);
if(FT_Bitmap_Convert(GlyphSlot->library, &BitmapGlyph->bitmap, &AlignedBitmap, 4))
if (FT_Bitmap_Convert_ReactOS_Hack(GlyphSlot->library, &BitmapGlyph->bitmap,
&AlignedBitmap, 4, TRUE))
{
DPRINT1("Conversion failed\n");
ExFreePoolWithTag(NewEntry, TAG_FONT);