Показать сообщение отдельно
Старый 05.04.2015, 00:16   #2
barsunduk
ПроЭктировщик
 
Аватар для barsunduk
 
Регистрация: 09.05.2010
Адрес: рф ро шахты
Сообщений: 177
Написано 66 полезных сообщений
(для 271 пользователей)
Ответ: Как рисовать на картинке (ImageOutput)?

winAPI делает это моментально, регионами, но я хз, как это на васик переложить. кто умеет, признавайтесь!
GetWindowRect(hWnd, &wnd);
        
hdc = BeginPaint(hWnd, &ps);
        
hdcMem = CreateCompatibleDC(hdc);
        for (
int i = 0; i < n; ++i)
        {
            
HRGN rgn = CreateRoundRectRgn(info[i].pos.x, info[i].pos.y, info[i].pos.x + CARD_WIDTH, info[i].pos.y + CARD_HEIGHT, 7, 7);
            
SelectClipRgn(hdc, rgn);
            
oldBitmap = SelectObject(hdcMem, cards[info[i].card]);
            
GetObject(cards[info[i].card], sizeof(bitmap), &bitmap);
            
BitBlt(hdc, info[i].pos.x, info[i].pos.y, bitmap.bmWidth, bitmap.bmHeight, hdcMem, 0, 0, SRCCOPY);
            
SelectObject(hdcMem, oldBitmap);
        }
//Don't forget to delete your region (SelectClipRgn makes a copy of it) 
этот вопрос тоже отпадает за ненадобностью.
и вообще просьба к модераторам удалить эту тему. вряд ли ещё найдётся человек, который не разберётся, как накладывать маски.
__________________
to be or not to be - it's not a question!
2b or not 2b = ff

Последний раз редактировалось barsunduk, 05.04.2015 в 20:55.
(Offline)
 
Ответить с цитированием