Module: wine Branch: master Commit: 910975a944ca90701381e4acd5eb02b1b345be13 URL: http://source.winehq.org/git/wine.git/?a=commit;h=910975a944ca90701381e4acd5...
Author: Piotr Caban piotr@codeweavers.com Date: Tue Jul 11 17:51:03 2017 +0200
gdiplus: Support GdipSetSmoothingMode in metafiles.
Signed-off-by: Piotr Caban piotr@codeweavers.com Signed-off-by: Vincent Povirk vincent@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/gdiplus/graphics.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+)
diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c index f20178a..277bbd2 100644 --- a/dlls/gdiplus/graphics.c +++ b/dlls/gdiplus/graphics.c @@ -5972,6 +5972,20 @@ GpStatus WINGDIPAPI GdipSetSmoothingMode(GpGraphics *graphics, SmoothingMode mod if(graphics->busy) return ObjectBusy;
+ if(graphics->smoothing == mode) + return Ok; + + if(graphics->image && graphics->image->type == ImageTypeMetafile) { + GpStatus stat; + BOOL antialias = (mode != SmoothingModeDefault && + mode != SmoothingModeNone && mode != SmoothingModeHighSpeed); + + stat = METAFILE_AddSimpleProperty((GpMetafile*)graphics->image, + EmfPlusRecordTypeSetAntiAliasMode, (mode << 1) + antialias); + if(stat != Ok) + return stat; + } + graphics->smoothing = mode;
return Ok;