IPB
ЛогинПароль:

> Правила раздела!

1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!

 
 Ответить  Открыть новую тему 
> Печать изображения из паскаля, Как осуществить?
сообщение
Сообщение #1


Гость






Доброго всем времени суток...

Несильно знаком с паскалем, поэтому появился такой вопрос. Я написал программу, результатом которой является вывод на экран некоторого графического изображения. Мне необходимо это изображение распечатать на принтере, либо просто сохранить в файл любого стандартного виндосовского формата. Подскажите пожалуйста, как я могу это сделать? Кнопкой PrintScreen пользоваться из Паскаля не получается.

Буду благодарен...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Читай здесь: Скриншоты
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3





Группа: Пользователи
Сообщений: 4
Пол: Мужской
Реальное имя: Алексей

Репутация: -  0  +


Спасибо...

Но теперь появился другой вопрос. При компиляции основной программы появляется ошибка 15: File not found (BMP_PLUS.TPU) Как теперь следует поступить?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Компилировать не через Alt+F9, а через F9 (то есть, не Compile, а Make из меню), тогда сначала откомпилируются все модули, и только потом - сама программа...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5





Группа: Пользователи
Сообщений: 4
Пол: Мужской
Реальное имя: Алексей

Репутация: -  0  +


Хм... В этом случае открывается код модуля, курсор на точке после последнего end, и ошибка 14: Invalid filename (d:\prog\tp7\tpu\BMP_PLUS.TPU).

Сообщение отредактировано: Ronin -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






Значит, что-то не так прописано в Options -> Directories, проверяй, все ли пути, присутствующие там, существуют на самом деле...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7





Группа: Пользователи
Сообщений: 4
Пол: Мужской
Реальное имя: Алексей

Репутация: -  0  +


Да, да..... С этой ошибкой разобрался... Теперь работает, только сохраняет в файл черный экран. Приведу код, правильно ли я вызов save_bmp поставил?

Код
program lab;
  uses crt,graph,BMP_PLUS;
  var a:array[1..10] of real; b:array[1..10] of real;
      t1,t2,t3,t4,a0,a1,e,dn:real;
      i,gd,gm,dp:integer;
begin clrscr;
  initgraph(gd,gm,'');
  line(50,30,50,400);
  line(50,400,600,400);
  for i:=1 to 11 do line(48,(400-30*i),52,(400-30*i));
  for i:=1 to 17 do line((50+30*i),398,(50+30*i),402);
  for i:=0 to 15 do begin
            dp:=20*i;
            dn:=0.384*0.01*dp;
            circle((50+round(dp*1.5)),(400-round(dn*300)),1);
            end;
  t1:=0; t2:=0; t3:=0; t4:=0; a0:=0; a1:=0; e:=1;
  a[1]:=330; b[1]:=1.110*0.0001;
  a[2]:=285; b[2]:=0.999*0.0001;
  a[3]:=255; b[3]:=0.888*0.0001;
  a[4]:=225; b[4]:=0.777*0.0001;
  a[5]:=195; b[5]:=0.666*0.0001;
  a[6]:=165; b[6]:=0.555*0.0001;
  a[7]:=135; b[7]:=0.444*0.0001;
  a[8]:=105; b[8]:=0.333*0.0001;
  a[9]:=75; b[9]:=0.278*0.0001;
  a[10]:=45; b[10]:=0.167*0.0001;
  for i:=1 to 10 do begin
            t1:=t1+a[i];
            t2:=t2+a[i]*a[i];
            t3:=t3+b[i];
            t4:=t4+a[i]*b[i];
            end;
  {writeln(t1:12:8);
  writeln(t2:12:8);
  writeln(t3:12:8);
  writeln(t4:12:8);} i:=0;
  while e>0.0000001 do begin
            i:=i+1;
            a0:=(t3-t1*a1)/10;
            e:=abs(t1*a0+t2*a1-t4);
            a1:=a1+0.000000000001;
            end;
  for i:=0 to 16 do begin
            dp:=20*i;
            dn:=10000*(a0+a1*dp);
            circle((50+round(dp*1.5)),(400-round(dn*300)),1);
            end;
  setcolor(red);
  for i:=1 to 10 do circle((50+round(a[i]*1.5)),(400-round(b[i]*300*10000)),1);
  save_bmp(0,0,getmaxx,getmaxy,'screen_l.bmp',0);
  readln;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






Я ж вроде говорил, что для 16-ти цветного режима надо передавать в Save_Bmp единицу шестым параметром, почему ты передаешь 0?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9





Группа: Пользователи
Сообщений: 4
Пол: Мужской
Реальное имя: Алексей

Репутация: -  0  +


Невнимательность - большой враг наш...

Теперь все в порядке. Спасибо огромное за помощь и за доступные разъяснения... smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 17.01.2021 1:35
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name