Как увидеть изображение?
Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду
Я перенёс (ссчитал) по точкам изображение (растр), полученное в графическом режиме Pascal-программы в файл с помощью функции GetPixel. Как мне теперь это изображение визуализировать, не прибегая к услугам Pascal?
(Вариант: Как преобразовать полученный файл в файл изображения, например, в файл “bmp”?)
(Вариант: Как преобразовать полученный файл в файл изображения, например, в файл “bmp”?)
Прогу и пример файла в студию
ака хинт: коментируйте код, самим же легче будет разобраться 

- Игорь Акопян
- Сообщения: 1440
- Зарегистрирован: 13 окт 2004, 17:11
- Откуда: СПБ
- Контактная информация:
читать формат файла, например, BMP, объявить соответствующую структуру, заполнить её нужным образом и сохранить.

а самый лучший вариант - запустить прогу под дос-эмулятором и PrintScrn
It's a long way to the top if you wanna rock'n'roll
Вот она; прога:demon416 писал(а):Прогу и пример файла в студию
uses crt,graph;
const tx: string[20]='D:\BP\Graf\Proba';
dr,md : integer; Wg : word;
Fa : file of word; {описание файла}
Begin
assign(Fa,tx); Rewrite(Fa); {Подготовка файла к записи}
dr:=Detect; Initgraph(dr,md,d:\bp\bgi'); {Графический режим}
{Создаю изображение и переписываю содержимое экрана по точкам в файл:}
Seek(Fa,0);
for j:=479 downto 0 do
for w:=0 to 639 do begin Wg:=GetPixel(w, j); write(Fa,Wg) end;
Closegraph;
Close(Fa);
End.
Пример файла - это набор чисел. Могу файл прислать, но не знаю как.
Somewhere. "а самый лучший вариант - запустить прогу под дос-эмулятором и PrintScrn "
Я бы и рад так поступить, но работаю из под Windows XP, а там, в графическом режиме Паскаля, экран клавишей PrintScreen не копируется.
Блин, ПОД ЭМУЛЯТОРОМ, а не через cmd
It's a long way to the top if you wanna rock'n'roll
- mc-black
- Сообщения: 250
- Зарегистрирован: 08 май 2008, 16:09
- Откуда: Россия, Нижний Новгород
- Контактная информация:
MSDN: Bitmaps
На заказ: VBA, Excel mc-black@yandex.ru
Понял, что у меня в части “ДОС - эмулятора” пробел в образовании. Попробовал восполнить этот пробел через Интернет. Но чёткой, внятной информации не нашёл (возможно, не там искал). В связи с этим вопросы:somewhere писал(а):Блин, ПОД ЭМУЛЯТОРОМ, а не через cmd
1.Можно ли с помощью ДОС – эмулятора получить снимок экрана в графическом режиме Pascal-программы, работающей под Windows XP?
2.Можно ли этот снимок сохранить и потом просмотреть вне Pascal?
3.Если на первые два вопроса ответ положительный, то где достать и как установить этот самый ДОС – эмулятор.
4.Где можно прочитать об этом чуде – юде внятную информацию (для чайников)?
гугли dosbox
ака хинт: коментируйте код, самим же легче будет разобраться 

Сегодня я уже имею чёрно-белое изображение, заданное (в файле типа “byte”) массивом “1” и “0”. Размер массива 640*480 чисел.Игорь Акопян писал(а):читать формат файла, например, BMP, объявить соответствующую структуру, заполнить её нужным образом и сохранить.
Попытался сделать из этого массива BMP-файл. Сделал заголовок bmp файла с сигнатурой “BM”, сделал информационный заголовок с описанием параметров будущего bmp-файла, потом переписал в этот файл массив чисел с изображением.
Стал смотреть и естественно ничего не получилось. При просмотре клавишей “F4” даже не увидел сигнатуру. Причина, в общем то, понятна; я, по-видимому, неправильно записал сигнатуру и использовал неправильную палитру для чёрно-белого изображения.
Я почти уверен, что существуют готовые программы, которые мою задачу в вышеописанной постановке решают.
Осталось только такую программу найти. Ведь рваться через тернии к звёздам нерентабельно; только время потеряешь.