Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.04.20;
Скачать: 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 вся ветка

Текущий архив: 2008.04.20;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.018 c
2-1206272590
webSQLNeederr
2008-03-23 14:43
2008.04.20
Аналог php функции split в Делфи?


15-1204686710
Slider007
2008-03-05 06:11
2008.04.20
С днем рождения ! 5 марта 2008 среда


15-1204791647
DiamondShark
2008-03-06 11:20
2008.04.20
Ура! Это всё-таки случилось.


4-1186639228
Classic
2007-08-09 10:00
2008.04.20
Необходимо перехватить момент печати на принтере


8-1178470753
ElenaS
2007-05-06 20:59
2008.04.20
открытые проекты звуковых редакторов