Piotr Caban : gdiplus: Support GdipSetInterpolationMode in metafiles.

Alexandre Julliard julliard at winehq.org
Wed Jul 12 15:37:27 CDT 2017


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

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Tue Jul 11 10:59:23 2017 +0200

gdiplus: Support GdipSetInterpolationMode in metafiles.

Signed-off-by: Piotr Caban <piotr at codeweavers.com>
Signed-off-by: Vincent Povirk <vincent at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/gdiplus/graphics.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c
index 91c54d3..a56ac43 100644
--- a/dlls/gdiplus/graphics.c
+++ b/dlls/gdiplus/graphics.c
@@ -5872,6 +5872,19 @@ GpStatus WINGDIPAPI GdipSetInterpolationMode(GpGraphics *graphics,
     if (mode == InterpolationModeHighQuality)
         mode = InterpolationModeHighQualityBicubic;
 
+    if (mode == graphics->interpolation)
+        return Ok;
+
+    if (graphics->image && graphics->image->type == ImageTypeMetafile)
+    {
+        GpStatus stat;
+
+        stat = METAFILE_AddSimpleProperty((GpMetafile*)graphics->image,
+                EmfPlusRecordTypeSetInterpolationMode, mode);
+        if (stat != Ok)
+            return stat;
+    }
+
     graphics->interpolation = mode;
 
     return Ok;




More information about the wine-cvs mailing list