[pango/pango1-dwrite] PangoCairo: Create CairoFont using DirectWrite




commit 5e2ff0cf848a11fc1e0ff2c51b7f1d6df4c9dfba
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Mon Aug 15 17:35:09 2022 +0800

    PangoCairo: Create CairoFont using DirectWrite
    
    ...if Cairo is built with DirectWrite support.  With this, we can
    support colored Emoji, a long-standing issue, on Windows without needing
    to use FontConfig.
    
    This will really fix issue !302 completely, regarding the Emoji not
    shown in color!

 pango/pangocairo-win32font.c | 8 ++++++++
 1 file changed, 8 insertions(+)
---
diff --git a/pango/pangocairo-win32font.c b/pango/pangocairo-win32font.c
index 5b860bab8..523ac62e7 100644
--- a/pango/pangocairo-win32font.c
+++ b/pango/pangocairo-win32font.c
@@ -75,6 +75,14 @@ pango_cairo_win32_font_create_font_face (PangoCairoFont *font)
 {
   PangoCairoWin32Font *cwfont = PANGO_CAIRO_WIN32_FONT (font);
   PangoWin32Font *win32font =  &cwfont->font;
+  void *dwrite_font_face = NULL;
+  gpointer dwrite_font = NULL;
+
+#ifdef HAVE_CAIRO_WIN32_DIRECTWRITE
+  dwrite_font_face = pango_win32_font_get_dwrite_font_face (win32font);
+  if (dwrite_font_face != NULL)
+    return cairo_dwrite_font_face_create_for_dwrite_fontface (dwrite_font_face);
+#endif
 
   return cairo_win32_font_face_create_for_logfontw (&win32font->logfontw);
 }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]