Nikolay Sivov : dwrite: Look for 'SVG ' table too when checking supported formats.

Alexandre Julliard julliard at winehq.org
Mon Apr 24 16:11:22 CDT 2017


Module: wine
Branch: master
Commit: 1b1488fda7e3cecae028c1198f00d1dcf2fc40dd
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=1b1488fda7e3cecae028c1198f00d1dcf2fc40dd

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Mon Apr 24 08:50:46 2017 +0300

dwrite: Look for 'SVG ' table too when checking supported formats.

Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/dwrite/opentype.c   | 6 +++++-
 dlls/dwrite/tests/font.c | 6 +++++-
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/dlls/dwrite/opentype.c b/dlls/dwrite/opentype.c
index b7e9d87..99531a6 100644
--- a/dlls/dwrite/opentype.c
+++ b/dlls/dwrite/opentype.c
@@ -37,6 +37,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(dwrite);
 #define MS_GLYF_TAG DWRITE_MAKE_OPENTYPE_TAG('g','l','y','f')
 #define MS_CFF__TAG DWRITE_MAKE_OPENTYPE_TAG('C','F','F',' ')
 #define MS_COLR_TAG DWRITE_MAKE_OPENTYPE_TAG('C','O','L','R')
+#define MS_SVG__TAG DWRITE_MAKE_OPENTYPE_TAG('S','V','G',' ')
 
 #ifdef WORDS_BIGENDIAN
 #define GET_BE_WORD(x) (x)
@@ -2069,6 +2070,9 @@ UINT32 opentype_get_glyph_image_formats(IDWriteFontFace4 *fontface)
     if (opentype_has_font_table(fontface, MS_COLR_TAG))
         ret |= DWRITE_GLYPH_IMAGE_FORMATS_COLR;
 
-    /* TODO: handle SVG and bitmap data */
+    if (opentype_has_font_table(fontface, MS_SVG__TAG))
+        ret |= DWRITE_GLYPH_IMAGE_FORMATS_SVG;
+
+    /* TODO: handle embedded bitmaps tables */
     return ret;
 }
diff --git a/dlls/dwrite/tests/font.c b/dlls/dwrite/tests/font.c
index 4d5780c..9fd8258 100644
--- a/dlls/dwrite/tests/font.c
+++ b/dlls/dwrite/tests/font.c
@@ -45,6 +45,7 @@
 #define MS_GLYF_TAG DWRITE_MAKE_OPENTYPE_TAG('g','l','y','f')
 #define MS_CFF__TAG DWRITE_MAKE_OPENTYPE_TAG('C','F','F',' ')
 #define MS_COLR_TAG DWRITE_MAKE_OPENTYPE_TAG('C','O','L','R')
+#define MS_SVG__TAG DWRITE_MAKE_OPENTYPE_TAG('S','V','G',' ')
 
 #ifdef WORDS_BIGENDIAN
 #define GET_BE_WORD(x) (x)
@@ -7436,7 +7437,10 @@ static DWORD get_face_glyph_image_formats(IDWriteFontFace4 *fontface)
     if (face_has_table(fontface, MS_COLR_TAG))
         ret |= DWRITE_GLYPH_IMAGE_FORMATS_COLR;
 
-    /* TODO: handle SVG and bitmap data */
+    if (face_has_table(fontface, MS_SVG__TAG))
+        ret |= DWRITE_GLYPH_IMAGE_FORMATS_SVG;
+
+    /* TODO: handle embedded bitmaps tables */
     return ret;
 }
 




More information about the wine-cvs mailing list