Вниз
Скачать: CL | DM;

Странное ограничение....   Найти похожие ветки 

 
Ricks ©   (2007-08-17 15:03) [0]

Только что нашел.
Вот это не работает, если размер картинки (WxHx4) больше 1МБ


var under : PRGBAData;
   fDC   : HDC;
   uBM   : HBITMAP;
   oBM   : HBITMAP;
   w, h  : integer;
begin
w:=header.bmiHeader.biWidth;
h:=header.bmiHeader.biHeight;

fDC:=CreateCompatibleDC(aDC);
uBM:=CreateBitmap( w, h, 1, 32, nil );
oBM:=SelectObject(fDC, uBM);
BitBlt( fDC, 0, 0, w, h, aDC, x0, y0, SRCCOPY );
*******************************************
under:=SysGetMem(w * h * sizeof(RGBA));
GetDIBits( fDC, uBM, 0, h, under, header, DIB_RGB_COLORS );

imBlendData( under, bits, w * h );

SetDIBitsToDevice(aDC, x0, y0, w, h, 0, 0, 0, h, bits, header, DIB_RGB_COLORS);
**********************************************
SysFreeMem(under);
SelectObject(fDC, oBM);
DeleteObject(uBM);
DeleteDC(fDC);


Память вроде бы выделяет, imBlendData выполняется нормально, а вот SetDIBitsToDevice не работает


 
Ricks ©   (2007-08-17 15:04) [1]

Вернее так работает, а вот
SetDIBitsToDevice(aDC, x0, y0, w, h, 0, 0, 0, h, under, header, DIB_RGB_COLORS);

Нет!



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
15-1204716527
афоня
2008-03-05 14:28
2008.04.20
рисование графиков в Perl


2-1206685011
Uno-84
2008-03-28 09:16
2008.04.20
Пересчет количества строк в таблице


4-1187346057
DevilDevil
2007-08-17 14:20
2008.04.20
взять альфаканал у иконки


2-1206695301
asdf2
2008-03-28 12:08
2008.04.20
Это глюк в IBExpert e?


2-1206519877
Andrewtitoff
2008-03-26 11:24
2008.04.20
Как удалить файл из проекта Delphi 2007




   Наверх