Vadim писал(а):Правда 1 - это будет жесть.
Для распознавания образов после бинаризации самое-то! ( Объем данных сокращается и все жужжит заметно веселее )


Зы
BitmapTest вполне рабочая приблуда ( правда гоняю ее в основном между 24 и 32 битами и обратно )
Ее секрет в том что нужно создать новое изображение нужной битности и уже после этого рисовать через Draw.

Зы
Но если задумал делать "вручную " глянь сюда ..
https://sourceforge.net/projects/tfastdib/( библиотека FastDIB модуль FConvert - там есть все что угодно ...
Конверсия TBitmap -> TFastDIB; (Встроенная для ВинАпи и работает криво )
- Код: Выделить всё
Var
FBmp,TFB:TFastDIB;
B:TBitmap;
FBmp_SD:Pointer;
...
Begin
FBmp:=TFastDIB.Create;
FBmp.SetSize(B.Width,B.Height,24);
FBmp_SD:=FBmp.Bits;
BitmapTest(b,pf24bit);
with b.RawImage do //FBmp.Bits:=Pointer(Data);
Move(Data^,FBmp.Bits^,DataSize);
end;
Обратно FBmp -> b
- Код: Выделить всё
b.BeginUpdate;
with b.RawImage do Move(FBmp.Bits^,Data^,DataSize);
b.EndUpdate;
FBmp.Bits:=FBmp_SD;
)