Проверял под Win7 и WinXP. Отправил сына учится на паскаль, принёс домой код типа работает... ан нет, погружаюсь в тему и ничего не выходит.
У меня FPC 2.4.0. пытаюсь с помощью модуля GRAPH вывести картинку из... например, image.bmp файла.
Для моего случая инет пестрит примерами типа:
- Код: Выделить всё
- procedure LoadBMP;
 var f:file; bitmap:pointer; size:longint;
 begin
 {$I-} Assign(f,'image.bmp'); Reset(f,1); {$I+}
 if (IOResult <> 0) then Exit;
 size:=FileSize(f);
 GetMem(bitmap,size);
 BlockRead(f,bitmap^,size);
 Close(f);
 PutImage(0,0,bitmap^,NormalPut);
 FreeMem(bitmap);
 end;
Так вот, всякие граф примитивы (линии, текст, прямоугольники) выводит, а PutImage(0,0,bitmap^,NormalPut) НЕ РАБОТАЕТ!!!
хоть убейся!
я и делал image.bmp разных размеров (на мало ли) и сохранял его с разным кол-вом цветов и от 1бит до 32бит (естественно рассчитываю на 8 бит цветность) ни как не хочет появляться на экране.
и проверял указатели и загрузку файла.. всё норм.
Что может быть не так?



 Вообще, такой простой способ подойдет только для 24-битных изображений, это во-первых. А во вторых, Вам нужно загрузить в память только данные изображения (растр). Смотрите формат bmp, например здесь
  Вообще, такой простой способ подойдет только для 24-битных изображений, это во-первых. А во вторых, Вам нужно загрузить в память только данные изображения (растр). Смотрите формат bmp, например здесь 



