gdiplus: Add clipping to GDI32_GdipDrawDriverString.

Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Vincent Povirk 2016-09-19 15:07:01 -05:00 committed by Alexandre Julliard
parent 3fd47e1be1
commit c6afa50db6
1 changed files with 10 additions and 0 deletions

View File

@ -6321,6 +6321,8 @@ static GpStatus GDI32_GdipDrawDriverString(GpGraphics *graphics, GDIPCONST UINT1
GpPointF pt;
HFONT hfont;
UINT eto_flags=0;
GpStatus status;
HRGN hrgn;
if (flags & unsupported_flags)
FIXME("Ignoring flags %x\n", flags & unsupported_flags);
@ -6332,6 +6334,14 @@ static GpStatus GDI32_GdipDrawDriverString(GpGraphics *graphics, GDIPCONST UINT1
SetBkMode(graphics->hdc, TRANSPARENT);
SetTextColor(graphics->hdc, get_gdi_brush_color(brush));
status = get_clip_hrgn(graphics, &hrgn);
if (status == Ok && hrgn)
{
ExtSelectClipRgn(graphics->hdc, hrgn, RGN_AND);
DeleteObject(hrgn);
}
pt = positions[0];
GdipTransformPoints(graphics, CoordinateSpaceDevice, CoordinateSpaceWorld, &pt, 1);