Главная страница
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.013 c
3-1195737356
dik
2007-11-22 16:15
2008.04.20
Пустые блобы


2-1205885712
Лена
2008-03-19 03:15
2008.04.20
межсимвольный интервал в компоненте RichEdit


3-1195702264
Петро
2007-11-22 06:31
2008.04.20
Универсальный доступ к СУБД


15-1204495643
Пробегал...
2008-03-03 01:07
2008.04.20
Подсчет количества вхождений потоков


3-1196234534
Tronado
2007-11-28 10:22
2008.04.20
"Сквозной" поиск