From 938d42c1480fbc7c80a4db187a29148a7742e219 Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Wed, 15 Aug 2012 12:10:08 +0900 Subject: [PATCH] gdiplus: When there is no target rectangle specified DrawImage should scale image to device dpi. --- dlls/gdiplus/graphics.c | 2 ++ dlls/gdiplus/tests/image.c | 2 -- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c index 4606074c77f..dfa37ebe814 100644 --- a/dlls/gdiplus/graphics.c +++ b/dlls/gdiplus/graphics.c @@ -2974,7 +2974,9 @@ GpStatus WINGDIPAPI GdipDrawImagePointRect(GpGraphics *graphics, GpImage *image, TRACE("(%p, %p, %f, %f, %f, %f, %f, %f, %d)\n", graphics, image, x, y, srcx, srcy, srcwidth, srcheight, srcUnit); scale_x = units_scale(srcUnit, graphics->unit, graphics->xres); + scale_x *= graphics->xres / image->xres; scale_y = units_scale(srcUnit, graphics->unit, graphics->yres); + scale_y *= graphics->yres / image->yres; width = srcwidth * scale_x; height = srcheight * scale_y; diff --git a/dlls/gdiplus/tests/image.c b/dlls/gdiplus/tests/image.c index 24cb43425f9..9e90cca097c 100644 --- a/dlls/gdiplus/tests/image.c +++ b/dlls/gdiplus/tests/image.c @@ -3642,7 +3642,6 @@ static void test_DrawImage(void) expect(Ok, status); match = memcmp(white_2x2, black_2x2, sizeof(black_2x2)) == 0; -todo_wine ok(match, "data should match\n"); if (!match) { @@ -3695,7 +3694,6 @@ static void test_GdipDrawImagePointRect(void) expect(Ok, status); match = memcmp(white_2x2, black_2x2, sizeof(black_2x2)) == 0; -todo_wine ok(match, "data should match\n"); if (!match) {