Новости

О проекте

Зачем?

Используемое ПО

Методика разработки сцен на PostScript

Операторы языка PostScript

Библиотека

Изучение языка

Статьи

Печать файлов PS

Создание каталога изображений

Печать образца доступными шрифтами

Ссылки...

Печать файлов PS

Вы написали программу на PostScript, которая создает то изображение о котором Вы мечтаете, вы его видите на экране, но его нужно распечатать. Как это сделать?

Вариант первый. Вы открываете Ваше творение в GSView и через его пункт меню File-Print печатаете. Просто и доходчиво.

Вариант второй. Создаете пакетный файл, например, с именем print.bat с таким содержимым (записывать в одну строчку!):

"c:\program files\aladdin\gs\bin\gswin32.exe" -sDEVICE=mswinpr2
      -sOutputFile="\\spool\Лазерный принтер" -dNOPAUSE -r600x600
      -dGraphicsAlphaBits=4 -dTextAlphaBits=1 c:/aaa/bbb/new/Konv.ps

и запускаете его на выполнение. Он делает следующее:

  1. Запускает интерпретатор "c:\program files\aladdin\gs\bin\gswin32.exe". (Кавычки обязательны!)
  2. Говорит ему что выводить результат нужно на один из принтеров -sDEVICE=mswinpr2, установленных в Вашем компьютере, с именем -sOutputFile="\\spool\Лазерный принтер". (Именно с таким именем должен существовать принтер на Вашем компьютере, причем неважно является он сетевым или локальным!)
  3. Печатать с разрешением 600х600 dpi: -r600x600
  4. После печати каждой страницы паузу не делаем: -dNOPAUSE.
  5. Устанавливаем режим сглаживания для графики и текста, соответсвенно: -dGraphicsAlphaBits=4 -dTextAlphaBits=1
  6. А печатаем файл: c:/aaa/bbb/new/Konv.ps

Можно усовершенствовать программу, чтобы имя печатаемого файла она брала из командной строки. Тогда текст файла print.bat будет таким (записывать в одну строчку!):

"c:\program files\aladdin\gs\bin\gswin32.exe" -sDEVICE=mswinpr2
     -sOutputFile="\\spool\Лазерный принтер" -dNOPAUSE -r600x600
     -dGraphicsAlphaBits=4 -dTextAlphaBits=1 %1

А печать файла Konv.ps будет выглядеть так:

C:\aaa\bbb\new> print Konv.ps 

Преобразование файлов .ps в растровый формат

Если Вам для Ваших целей потребовалось преобразовать Ваше творение, например, Konv.ps в растровый формат, то для этого необходимо дать следующую команду (записывать в одну строчку!):

"c:\program files\aladdin\gs\bin\gswin32.exe" -sDEVICE=jpeg
     -sOutputFile=inv-nom%%d.jpg -dJPEGQ=100 -dNOPAUSE
     -r100x100 -dGraphicsAlphaBits=4 -dTextAlphaBits=4 inv-no.ps

Она делает следующее:

  1. Запускает интерпретатор "c:\program files\aladdin\gs\bin\gswin32.exe". (Кавычки обязательны!)
  2. Говорит интерпретатору, что нужно результат перевести в формат JPEG: -sDEVICE=jpeg.
  3. Результаты записать в файлы с именами inv-nom00.jpg inv-nom01.jpg и т.д. Т.е. каждую страницу в отдельный файл записывать. Номера даются по возврастающей. Опция -sOutputFile=inv-nom%%d.jpg.
  4. Качество jpeg-файлов максимальное (размер - тоже): -dJPEGQ=100.
  5. Работаем в командном режиме, т.е. вопросы не задавать: -dNOPAUSE.
  6. Результаты выводить с разрешением 100 dpi (хорошее экраное качество): -r100x100.
  7. Устанавливаем режим сглаживания для графики и текста, соответсвенно: -dGraphicsAlphaBits=4 -dTextAlphaBits=1
  8. А печатаем файл: inv-no.ps

Возможности по улучшению см. выше. Много хорошо записать эту строку в общем виде в пакетный файл, например, ToJPEG.bat (записывать в одну строчку!):

"c:\program files\aladdin\gs\bin\gswin32.exe" -sDEVICE=jpeg
     -sOutputFile=fig%%d.jpg -dJPEGQ=100 -dNOPAUSE
     -r100x100 -dGraphicsAlphaBits=4 -dTextAlphaBits=4 %1

Тогда преобразование, например, файла Test.ps будет выглядеть следующим образом:

C:\aaa\bbb\new> ToJPEG Test.ps 

в результате в директории C:\aaa\bbb\new будут созданы файлы fig00.jpg fig01.jpg ... и т.д. по количеству страниц.

И это все, что нужно сделать, чтобы печатать...

5.02.2002



©Фурашев А. 2002
e-mail

Хостинг от uCoz