Фильтры
печати
Фильтры печати -
специальные
программы или сценарии, предназначенные для обработки данных, направляемых на
печать. Например, для принтера PCL можно написать один сценарий для преобразования
формата текстовых АЗСП-данных и их отправки непосредственно на принтер, другой
- для передачи данных программе GhostScript, откуда они переправляются на принтер
уже в формате PCL. Если делать это вручную, придется вносить в файл printcap
ряд записей - по одной на каждый фильтр.
# PCL-принтер
с АSCii фильтром
ascii-pcl:\
:sd=/var/spool/lpd/ascii-pcl:\
:тх#0:
:lp=/dev/lp0:\
:sh:\
:if=/var/spool/ipd/ascii-pcl/filter
# PCL-принтер
PostScript-фильтром ps-pcl:\
:sd=/var/spool/lpd/ps-pcl:\
:mx#0:
:lp=/dev/lp0:\
:sh:\
:if=/var/spool/ipd/ps-pcl/filter
.# PCL-принтер
без фильтра pel:\
:sd=/var/spool/lpd/pcl:\
:mx#0:
:lp=/dev/lp0:\
:sh:\
Фильтры обеспечивают правильный
формат данных, выводимых на печать, но усложняют процесс печати. Пользователю
необходимо знать, в каком формате выполняет печать его программа (неформатированный
текст, PostScript или PCL) и соответственно выбирать принтер. Следует помнить
о возможной путанице из-за того, что в фильтрах предполагается наличие трех
физических принтеров,
хотя установлен только один.
Эти проблемы решаются применением
магических фильтров.
Магические фильтры, которые можно загрузить из internet,
обрабатывают всю конфигурационную информацию в файле printcap для большинства
поддерживаемых принтеров и обеспечивают фильтрацию с определением типа
данных,
направляемых на печать. Безусловно, это повышает надежность фильтрации.
Система
APS Print filter
Основной пакет магического
фильтра - система APS Print filter. Последнюю версию APS Print filter можно
загрузить с узла http: //www.apsfilter.org. Во время написания этой книги последней
версией являлась APS Print filter 6.1.1. Мы рассматриваем версию 6.1.1, записанную
на сервере в файл архива apsfilter-6.1.1.tar.gz. Все описываемые операции применимы
к версии 6.1.1. При появлении вопросов обращайтесь к документу READmE, который
cтановится доступен после загрузки и разворачивания файла архива на вашей системе
Linux.
Для установки этой системы
воспользуйтесь командой tar, которая позволяет извлекать файлы из сжатого архива
и размещать в каталоге, например /usr/ local. Каталог для разархи-вированных
файлов необходимо создать заранее. В следующем примере предполагается, что исходный
архив загружен в каталог / trap.
Примечание
Для выполнения этих операций войдите в систему как корневой пользователь.
# cd /usr/local
# tar xzvf /tmp/apsfilter6.1.1.tar.gz
# cd apsfilter
Отконфигурируйте APS для работы с вашим принтером, запустив сценарий, входящий в его комплект.
# ./SETUP
APS Print filter работает
с пакетом Ghostscript. Если на вашем компьютере не установлена достаточно свежая
версия Ghostscript, то программа установки SETUP сообщит-об этом. Несмот-ря
на предупреждение, APS Print filter 6.1.1 работает с версией Ghostscript 5.5,
входящей в состав Red Hat Linux 7.1.
Примечание
Если вам необходимы последние версии принтерных драйверов, следует загрузить последнюю версию Ghostscript, доступную по адресу http://www.сs .wisc.edu/~ghost/. Если вы уже пользуетесь Ghostscript, обратите внимание на изменение имени: старое название - Aladdin Ghostscript, новое - APfL Ghostscript.
На экран выведется приветствие, показанное на рис. 18.1. Примите условия лицензии GNU General Public License для APS Print filter, нажав клавишу у, а затем нажмите Enter. После ответа на запрос почтового адреса, программа SETUP выводит на экран окно инсталляции программы installation Program, показанное на рис. 18.2.
Рис. 18.1. Запуск утилиты APS Print filter
Рис.
18.2.
Установка APS Print filter
Для продолжения нажмцге Enter. Ознакомьтесь с содержимым следующего окна, в котором описаны функции сценария установки Apsfilter Setup, и нажмите Enter для продолжения установки. На следующем шаге задается конфигурационный каталог, в котором вы предполагаете хранить конфигурационные файлы (см. рис. 18.3). Поскольку задаваемое по умолчанию значение /etc/apsf liter наилучшим образом согласуется с другими настройками Red Hat Linux 7.1, следует выбрать именно этот каталог.
Рис.
18.3.
Установка конфигурационного каталога
После нажатия Enter появляется
подсказка. Сценарий установки продолжает свою работу: проверяется наличие прав
доступа к используемым каталогам и выполняется сохранение конфигурационного
файла текущего принтера в файле /etc/printcap. old.
После ответов на вопросы,
на экране появляется главное установочное меню Apsfilter Setup
main menu, показанное на рис. 18.4. Для конфигурирования принтера следует выбрать опцию 1 или 2. Можно также с помощью опций 3—5 установить тестовую страницу, которую затем запустить с помощью опции Т.
Рис.
18.4.
Главное меню Apsfilter Setup
Первые две опции меню -
D и R - выводят список доступных драйверов устройств, соответствующих вашей
установке Ghostscript и страницу документации Ghostscript-драйверов. Опции 1
и 2
конфигурируют принтер, как показано ниже.
Выбор
драйвера принтера
Выберите из главного меню
опцию 1. В состав утилиты APS Print filter входят драйверы восьми различных
типов, как показано на рис. 18.5. Современный принтер либо в самом деле представляет
собой PostScript-принтер, либо нуждается в Ghostscript-драйвере определенного
типа. Если вы точно не знаете, каков в этом отношении ваш принтер, попробуйте
выбрать некоторые из приведенных опций. Если ваш принтер не относится к PostScript-принтерам
(соответствующие сведения можно найти в его документации), он, вероятно, обнаружится
в списках, открываемых одной из этих опций.
Примечание
Три из перечисленных опций (gimp-print, рс!3 и ibm Omni) обеспечены специальной поддержкой Ghostscript для перечисленных принтеров. Если после поиска во всех прочих категориях, вы по-прежнему не знаете, к какой категории относится Ваш принтер, обратитесь к документации Printing HOWTO, расположенной по адресу http://www.linuxdoc.org/HOWTO/Printing-HOWTO/index.html .
Рис. 18.5.
Меню выбора драйвера принтера Apsfilter
Опция 1 позволяет выбрать
PostScript-принтер с учетом его разрешающей способности. Разрешающая способность
принтера (dpi) определяется числом точек, которые он может напечатать на одном
квадратном дюйме. Red Hat Linux 7.1 включает PostScript-драйверы, ориентированные
на разрешающую способность от 300dpi до 2880dpi. Опция 2 позволяет выбрать один
из более чем 150 принтеров, поддерживаемых Ghostscript.
Опция 3 опирается на надстройку
gimp-print, которая обеспечивает высококачественный вывод графики для различных
моделей принтеров Canon, Epson, Lexmark и HP.
Опция 4 поддерживает в
основном принтеры HP DeskJet и DeskJet color. Опция 5 представляет собой альтернативу
опции 4. Поскольку она относится к категории "экспериментальных",
качество печати такого драйвера может быть лучше стандартного, но иногда такой
драйвер вообще не работает.
Опция 6 ориентирована на
более чем 250 моделей принтеров, поддерживаемых драйвером ibm Omni.
Выберите опцию, наиболее
близко отвечающую вашей модели принтера. В результате появится меню с опциями
навигации по длинному списку. Нажимая Enter, прокручивайте список, пока не найдете
имя вашей модели принтера. Запишите номер, соответствующий ей в списке, и введите
его в ответ на соответствующий запрос. Кроме того, можно выбрать 0 и нажать
Enter, чтобы вернуться в меню выбора драйвера принтера Printer Driver Selection.
Как только вы подтвердите свой выбор, сценарий вернет вас в главное меню установки Apsfilter Setup main menu, где будет указан результат выбора. Как показано на рис. 18.6, выбран принтер [ 1 j et4 ], что соответствует модели HP LaserJet 4L.
Рис.
18.6.
Конфигурационное меню Apsfilter
Примечание
Для многих принтеров предусмотрено несколько разновидностей драйверов. Например, для модели HP LaserJet4L существует Ghostscript-драйвер и gimp-print-драйвер. Иногда для выбора лучшего драйвера, из числа доступных, приходится поэкспериментировать.
Совет
Проверьте в этом меню, какая разрешающая способность задана для вашего принтера. Если она отличается от указанной в документации на принтер, можете изменить установленное значение с помощью опции 4 (Print Resolution) конфигурационного меню.
Установка
интерфейса
Можно определить или изменить указанный тип интерфейса принтера. Следующий шаг посвящен конфигурированию порта подключения принтера. Он может подключаться к яараллель-ному или последовательному порту. Кроме того, можно пользоваться удаленными принтерами, доступными через сеть. Для конфигурирования этого параметра, выберите опцию 2 из главного меню установки Apsfilter Setup main menu. В результате появится окно настройки интерфейса Apsfilter, interface Setup, показанное на рис. 18.7.
Рис.
18.7.
Окно конфигурирования интерфейса Apsfilter
В меню настройки интерфейса
interface Setup перечислено пять различных способов подключения принтера:
Local Parallel/USb (Локальный
параллельный/USb).
Параллельный порт обычно снабжен 25-контактным разъемом,
выведенным на заднюю стенку компьютера. В Linux с такими портами ассоциируются
устройства /dev/lp0 и /dev/lp1, как описано выше. Если у вас USb-принтер, способ
его конфигурирования не отличается от конфигурирования принтера с параллельным
портом.
Примечание
Некоторые USb-принтеры могут быть сконфигурированы на использование устройств параллельных портов Linux. Поскольку параллельные порты ассоциируются с устройствами /dev/lpO и /dev/lpl, USb-порты принтеров ассоциируются с устройствами /dev/ usb/lp0 и /dev/usb/lpl.
Local Serial (Локальный
последовательный).
Последовательный порт обычно снабжен 9-контактным разъемом,
выведенным на заднюю стенку компьютера. В Linux с такими портами ассоциируются
устройства /dev/ttyS0 и /dev/ttyS1, как описано далее в этой главе.
Unix/Network Printer
(Unix/сетевой принтер).
Позволяет подключаться к принтеру, подсоединенному
к другому Linux- или Unix-компьютеру, доступному через локальную или другую
сеть.
Windows/NT (Samba).
Позволяет устанавливать принтер, подключенный к компьютеру с операционной
системой microsoft Windows 95/98/me/NT/2000, доступному через локальную или
другую сеть.
AppleTalk.
Позволяет
устанавливать принтер, подключенный к Apple-компьютеру, доступному через локальную
или другую сеть.
Выбрав подходящую опцию,
нажмите Enter для возврата в главное меню установки Apsfilter Setup main menu.
Создание
тестовой страницы
Перед выходом из установки
Apsfilter Setup, полезно проверить результаты настройки с помощью печати тестовой
страницы. Чтобы напечатать такую страницу, следует задать размер листа бумаги,
разрешающую способность принтера и тип принтера: цветной/монохромный.
Чтобы задать размер
листа бумаги, выберите опцию 3 (Paper format) в главном меню. Можно выбрать
один из пяти форматов:
Выберите формат, наиболее
близкий к формату листа-в вашем принтере и нажмите Enter.
Вернувшись в главное меню
установки Apsfilter Setup main menu, выберите опцию 4 (Print Resolution) для
установки разрешающей способности. Если заданная по умолчанию разрешающая способность
вас удовлетворяет, то ничего менять не нужно. В противном случае это меню позволяет
выбрать одну из стандартных величин или задать собственное значение. Выберите
необходимую величину и нажмите Enter.
Если конфигурируется цветной
принтер, может потребоваться изменение параметра глубины цвета печати. Для этого
выберите опцию 5 (Toggle monochrome/Color). Доступная в данной версии разновидность
этого меню позволяет выбрать любое значение от 1 bрр (черно-белый) до 32bpp
(true color). Выберите необходимое значение и нажмите Enter.
Тестирование
конфигурации
Если конфигурирование Apsfilter
завершено и кабели, соединяющие принтер с компьютером, подключены, можно попытаться
протестировать результаты создания конфигурации. В главном меню установки Apsfilter
Setup main menu нажмите Т и следуйте указаниям, выводимым на экран. Создание
тестовой страницы, может потребовать времени, в особенности, если тестируется
цветной принтер или принтер с высоким разрешением. Если тестовая страница успешно
сформирована, то она выводится, и вы увидите тестовую картинку и образцы шрифта
различного размера.
Если созданная конфигурация
вас удовлетворяет, то в главном меню установки Apsfilter Setup main menu нажмите
i, чтобы сохранить созданную конфигурацию. После ответов на ряд вопросов установки
записываются в файл /etc/printcap. Дтя завершения конфигурирования нажмите Q
в главном меню установки Apsfilter Setup main menu.
После
конфигурирования
После конфигурирования
в системе должен быть файл printcap. Пример такого файла:
# LAbEL apsfilter
# /etc/printcap
#
# He редактируйте!
Внесенные изменения не сохраняются!
# Этот файл генерируется
автоматически с помощью
# printconf-backend
в ходе ipd инициализации. #
# Вносимые вручную
изменения можно поместить в файл
# /etc/printcap.
local, они будут учтены.
## Все что далее,
включено дословно из /etc/printcap. local ##
#
# printcap. local
# Этот файл включен
с помощью printcap,
# и может использоваться
для настраиваемых вручную принтеров.
# APSl_bEGiN:printerl
# - не удаляйте
начальную метку для aps filter printer 1
# - никаких других
определений принтеров от bEGiN до END LAbEL
1р | Printerl
auto : \
:lp=/dev/lpO:\
: if =/etc/apsf
ilter/basedir/bin/apsfilter : \
:sd=/var/spool/lpd/lp:
\
: lf=/var/spool/lpd/lp/log:
\
: af =/var/spool/lpd/lp/acct
: \
:mx#0:\
:sh: rawl Printerl
raw:\
:lp=/dev/lp0:
\
: if =/etc/aps£ilter/basedir/bin/apsfilter: \
:sd=/var/spool/lpd/rawl: \
: lf=/var/spool/lpd/rawl/log: \
:af=/var/spool/lpd/rawl/acct: \
:mx#0:\
:sf :\
:sh: # APS1_END
- не удаляете эту строку
Предупреждение
Если вы пользуетесь утилитой Apsfilter, то не обращайтесь к утилите Printconf, описанной в гл. 15; в противном случае конфигурация созданная в Apsfilter будет утрачена.
Независимо от типа конфигурированного
в Linux принтера, система фильтрации APS позволяет создать следующие очереди
печати.
lp | Printerl auto.
Автоматический фильтр, распознающий
тип выдаваемого на печать файла и соответствующим образом его обрабатывающий.
raw —
очередь без
фильтрации для программ, которые выводят данные на печать в формате, соответствующем
требованиям принтера.
Примечание
Основные конфигурационные файлы Apsfilter, обсуждавшиеся ранее, сохраняются в указанном вами при установке каталоге. По умолчанию каталогом Apsfilter является /etc/apsfilter. Для повторного запуска конфигурационной программы Apsfilter и использования каталога Apsfilter по умолчанию, выполните команду /etc/apsfilter/basedir/SETUP.
Печать
Итак, система готова к
печати. Для ее выполнения можно воспользоваться командой 1рг. Флажок - Р указывает
очередь печати. Например, по команде
$ ipr -Praw /etc/printcap
файл printcap распечатывается
из очереди неформатированных текстов, а по команде
$ ipr -Pip /etc/printcap
он же распечатывается через автоматический фильтр.
Примечание
Между ключом -Р и именем принтера в приведенной выше команде ipr пробел не нужен.