Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.05.2010, 18:22   #1
Aries
Пользователь
Пользователь
 
Аватар для Aries
 
Регистрация: 23.04.2009
Сообщений: 39
По умолчанию Сохранение нарисованного на картинке

Среда: PascalABCNET.
Надо сделать сохранение ВСЕГО изображения в файл. То есть, то, что было загруженно и то, что нарисованно на загруженном изображении.

Использовал в обхявлении pictureabc и просто picture. В общем два способа сохранения знаю: savewindow(имя файла) и переменная.save(имя файла). В первом случае только то, что нарисованно мышью, во втором - загруженное изображение.

Ниже мой исходник. Там пока что сделано то, что будет в общем (особо не критикуйте). Исправте так, чтобы всё работало так, как описано выше.

Цитата:
program graph;

uses graphabc,abcobjects;

var image:pictureabc;

procedure mousedown(x,y,mb: integer);
begin
moveto(x,y);
end;

procedure mousemove(x,y,mb: integer);
begin
if mb=1 then lineto(x,y);
end;

procedure keydown(key:integer);
begin
if key=vk_numpad0 then setpencolor(clwhite);
if key=vk_numpad1 then setpencolor(clred);
if key=vk_numpad2 then setpencolor(clgreen);
if key=vk_numpad3 then setpencolor(clblue);
if key=vk_numpad4 then setpencolor(clyellow);
if key=vk_numpad5 then setpencolor(clorange);
if key=vk_numpad6 then setpencolor(clchocolate);
if key=vk_numpad7 then setpencolor(clpink);
if key=vk_numpad8 then setpencolor(clgray);
if key=vk_numpad9 then setpencolor(clpurple);
if key=vk_b then setpenwidth(10);
if key=vk_space then setpenwidth(1);
if key=vk_space then setpencolor(clblack);
if key=vk_r then clearwindow;
if key=ord('0') then clearwindow(clblack);
if key=ord('1') then clearwindow(clred);
if key=ord('2') then clearwindow(clgreen);
if key=ord('3') then clearwindow(clblue);
if key=ord('4') then clearwindow(clyellow);
if key=ord('5') then clearwindow(clorange);
if key=ord('6') then clearwindow(clchocolate);
if key=ord('7') then clearwindow(clpink);
if key=ord('8') then clearwindow(clgray);
if key=ord('9') then clearwindow(clpurple);
if key=vk_s then savewindow('image.gif'); {вот здесь я и застрял}
end;

begin
setwindowsize(700,550);
image:=new pictureabc(0,0,'image.gif');
onmousedown:=mousedown;
onmousemove:=mousemove;
onkeydown:=keydown;
end.
Нужен именно код, который всё сохраняет. Иначе не пойму.
-Вы верите в Бога?
-У меня нет фактов, подтверждающих его существование.

Последний раз редактировалось Aries; 05.05.2010 в 18:27.
Aries вне форума Ответить с цитированием
Старый 06.05.2010, 18:12   #2
Aries
Пользователь
Пользователь
 
Аватар для Aries
 
Регистрация: 23.04.2009
Сообщений: 39
По умолчанию

Ну помогите кто-нибудь!
-Вы верите в Бога?
-У меня нет фактов, подтверждающих его существование.
Aries вне форума Ответить с цитированием
Старый 09.05.2010, 00:33   #3
ImmortalAlexSan
Участник клуба
 
Аватар для ImmortalAlexSan
 
Регистрация: 13.01.2009
Сообщений: 1,353
По умолчанию

Может быть вам стоит попробывать поэкспериментировать с SaveDialog ?
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
ImmortalAlexSan вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Распознать картинку на картинке eldar Компоненты Delphi 8 22.09.2009 07:35
текст на картинке Chudo4258 HTML и CSS 21 29.05.2009 22:54
Поменять надпись на картинке! Lemo Свободное общение 12 12.02.2009 16:29
Надпись на картинке Lemo Помощь студентам 4 11.02.2009 20:12
Число с BMP картинке JRcoker Общие вопросы Delphi 3 07.10.2008 19:12