Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Теоретические вопросы _ Графика => в файл

Автор: compiler 6.05.2007 15:39

Добрый день!
Не могли бы подсказать как графическое изображение выводить не на экран а в файл с соответствующим расширением.
Заранее благодарен.

Автор: volvo 6.05.2007 15:43

То есть? Рисовать сразу в файл? Или как? Откуда картинка-то берется в начале?

И с каким расширением ты хочешь работать? Для BMP/PCX, насколько я помню, были модули которые сохраняют картинку - может, просто отрисовать на невидимой странице и потом сохранять ее содержимое в файл?

Автор: compiler 6.05.2007 15:47

Цитата(volvo @ 6.05.2007 11:43) *
Откуда картинка-то берется в начале?
Отрисовывается в программе
Цитата(volvo @ 6.05.2007 11:43) *
И с каким расширением ты хочешь работать?
не принципиально, его можна и потом поменять(хотелось бы в джипеге)
Цитата(volvo @ 6.05.2007 11:43) *
Для BMP/PCX, насколько я помню, были модули которые сохраняют картинку - может, просто отрисовать на невидимой странице и потом сохранять ее содержимое в файл?
а ссылочку даш? или ключевые слова.. механизм не важен.

Автор: volvo 6.05.2007 15:49

Например это:
http://forum.pascal.net.ru/index.php?showtopic=4533
(см. модуль для создания скриншотов, внизу)

Автор: compiler 6.05.2007 16:01

это конечно здорово, но где можно прочитать о создании собственных модулей на FP.

Автор: volvo 6.05.2007 16:08

А чем оно отличается от создания модулей под TP? Сначала пишешь в виде программы, а потом, когда все работает - просто добавляешь названия секций: unit, interface, implementation ... И все константы/переменные/типы/заголовки подпрограмм, которые должны быть доступны извне переносишь в секцию interface... Вот и вся технология...

Автор: compiler 6.05.2007 16:14

Цитата(volvo @ 6.05.2007 12:08) *
А чем оно отличается от создания модулей под TP? Сначала пишешь в виде программы, а потом, когда все работает - просто добавляешь названия секций: unit, interface, implementation ... И все константы/переменные/типы/заголовки подпрограмм, которые должны быть доступны извне переносишь в секцию interface... Вот и вся технология...
там в библиотеки стандартной какието другие и разные расширения, мне какое ставить?

Автор: volvo 6.05.2007 16:15

Ничего тебе ставить не надо... файл сохрани как pas или pp, компилятор сам разберется, что именно делать с модулем...

Автор: compiler 6.05.2007 16:38

Цитата(volvo @ 6.05.2007 12:15) *
Ничего тебе ставить не надо... файл сохрани как pas или pp, компилятор сам разберется, что именно делать с модулем...
с модулем разобрался.
теперь возвращаемся к основной задаче
допустим есть задача ресующея линию
Uses CRT, Graph, MyBMP;
Var
GraphDriver, GraphMode : integer;
Begin
GraphDriver := detect;
InitGraph(GraphDriver, GraphMode, 'c:\bp\bgi');
While not KeyPressed Do Begin
Line (10, 10, 100, 100);
End;
CloseGraph;
End.

как теперь сохранить в файл(какую процедуру использовать)?

и еще можно делать видио?

Автор: volvo 6.05.2007 17:39

Цитата
как теперь сохранить в файл(какую процедуру использовать)?

save_bmp(0, 0, getmaxx, getmaxy, 'screen.bmp', 0); { <--- для 16-цветных режимов 1 вместо 0 последним параметром }

Автор: compiler 6.05.2007 17:59

Цитата(volvo @ 6.05.2007 13:39) *

save_bmp(0, 0, getmaxx, getmaxy, 'screen.bmp', 0); { <--- для 16-цветных режимов 1 вместо 0 последним параметром }


прошу прощение я разобрался не с той библиотекой. в этой у меня одни ошибки(37).Прикрепленное изображение

Автор: volvo 6.05.2007 18:29

Ну, а для FPC я бы все-таки посмотрел в сторону библиотеки http://www.nomssi.de/pasjpeg/pasjpeg.html