Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.27;
Скачать: CL | DM;

Вниз

ошибка с GetDIBits при глубине цвета менее 9 бит.   Найти похожие ветки 

 
Grief ©   (2005-09-27 19:33) [0]

Почему при использовании

{Bits: array[0..32767] of Byte;}
GetDIBits(Bitmap.Canvas.Handle, Bitmap.Handle, Y, 1, @Bits, BitInfo, DIB_RGB_COLORS);

если Bitmap.bmiHeader.biBitCount равен или меньше 8, происходит "access violation"? Я знаю, что режимы с глубиной ниже или равной 8 бит/пикс. используют палитру, но ошибка то почему? И вываливается она не сразу, а только по окончании функции, в которой происходит вызов GetDIBits.
P.S. Да, Bits: TByteArray; при использовании PByteArray у меня была такая же ошибка всегда, правда я не уверен, что это не из-за моего криворукия...


 
MBo ©   (2005-09-28 06:51) [1]

Покажи, как заполняешь структуру BitInfo


 
Grief ©   (2005-09-28 08:30) [2]

Да, я заметил ошибку - после чтения заголовка из файла насильственно устанавливается BitInfo.bmiHeader.biCompression := BI_RGB; Пардон за глупый вопрос, MBo - спасибо!



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

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

Наверх




Память: 0.47 MB
Время: 0.057 c
2-1131714238
De1uxe
2005-11-11 16:03
2005.11.27
Помогите


14-1130772182
myWindow
2005-10-31 18:23
2005.11.27
Соединение компьютеров по технологии шина


8-1120465795
vladgul
2005-07-04 12:29
2005.11.27
Использование PTP (Picture Transfer Protocol) в своей программе


2-1131059434
Pics
2005-11-04 02:10
2005.11.27
Как повернуть TBitMap на 180 градусов, быстро ?


14-1131102516
Megabyte
2005-11-04 14:08
2005.11.27
Обращение к Юре Федорову