From a8bcd3e4f84b226097479f8db56780039187f00a Mon Sep 17 00:00:00 2001 From: NishiOwO Date: Thu, 16 Oct 2025 08:38:28 +0000 Subject: [PATCH] solved git-svn-id: http://svn2.nishi.boats/svn/milsko/trunk@352 b9cfdab3-6d41-4d17-bbe4-086880011989 --- src/backend/gdi.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/backend/gdi.c b/src/backend/gdi.c index 869825f..cb08fdc 100644 --- a/src/backend/gdi.c +++ b/src/backend/gdi.c @@ -395,11 +395,21 @@ void MwLLDestroyPixmap(MwLLPixmap pixmap) { void MwLLDrawPixmap(MwLL handle, MwRect* rect, MwLLPixmap pixmap) { HDC hmdc = CreateCompatibleDC(handle->hDC); + POINT p[3]; + + p[0].x = rect->x; + p[0].y = rect->y; + + p[1].x = rect->x + rect->width; + p[1].y = rect->y; + + p[2].x = rect->x; + p[2].y = rect->y + rect->height; SelectObject(hmdc, pixmap->hBitmap); SetStretchBltMode(handle->hDC, HALFTONE); - MaskBlt(handle->hDC, rect->x, rect->y, rect->width, rect->height, hmdc, 0, 0, pixmap->hMask, 0, 0, MAKEROP4(SRCCOPY, 0x00AA0029)); + PlgBlt(handle->hDC, p, hmdc, 0, 0, pixmap->width, pixmap->height, pixmap->hMask, 0, 0); DeleteDC(hmdc); }