Использование принтеров
Примеры.
Программа фильтрации называется /usr/bin/npf. Она обрабатывает два типа ввода - nroff37 и X, дает тип вывода TX и будет работать с любым принтером типа TX. Программа принимает три параметра: -Xb только для типа ввода X; -l integer для длины страницы вывода; -w integer для ширины страницы вывода.
Определение вывода будет выглядеть следующим образом:
Input types: X,nroff37 Output types: TX Printer types: TX Command: /usr/bin/npf Options: INPUT X = -Xb, LENGTH * = -1*, WIDTH * = -W*
Программа фильтрации называется /usr/bin/x9700. Она обрабатывает один тип ввода - troff, дает тип вывода 9700 и будет работать на принтере типа 9700. У программы есть один устойчивый параметр, -ib, и она принимает три других параметра:
-l integer | для длины страницы вывода |
-s name | для набора символов |
-o portrait или -o landscape | для ориентации бумаги на портрет или пейзаж |
Вы решили, что ваши пользователи дают сокращения port и land, когда они запрашивают об ориентации бумаги. В связи с тем, что эти параметры не характерны для LP, пользователи будут указывать их, используя параметр -y команды lp.
Определение фильтра будет выглядеть следующим образом:
Input types: troff Output types: 9700 Printer types: 9700 Command: /usr/bin/x9700 -ib Options: LENGTH * = -l *, CHARSET * = -S *, MODES port = -o portrait, MODES land = -o landscape
(Последняя строка разделена на несколько строк в целях удобочитаемости; вы будете вводить ее как одну строку).
Примечание. Если значение характеристики или замена должны включать запятую или знак равенства ( = ) поставьте перед ними косую черту. Косая черта перед этими двумя символами будет удалена, когда значение характеристики или замена будут уже использоваться (все другие знаки косой черты останутся без изменений).
7.3.3.1. Добавление фильтра с помощью команды
При определении нового фильтра с помощью команды, сначала соберите информацию об этом фильтре, затем введите его в файл или прямо в команду lpfilter. Получите информацию в том виде, в каком она перечислена в предыдущем меню: Input types: input-type-list Output types: output-type-list Printer types: printer-type-list Printers: printer-list Filter type: fast or slow Command: simple-command Options: template-list.
Когда вводите список, отделите элементы этого списка пробелами или запятыми. Недостающей информации присваиваются значения по умолчанию, приведенные в меню. После того как определение фильтра будет полным, введите одну из нижеприведенных команд и добавьте фильтр к системе:
/usr/sbin/lpfilter -f filter-name -F file-name /usr/sbin/lpfilter -f filter-name -
Первая команда получает определение фильтра из файла, а вторая команда - из стандартного ввода.
7.3.4. Вывод фильтра на экран
Вы проверяете определение фильтра после того, как он будет добавлен в LP или с помощью выбора list из меню Manage Filters (Управление фильтрами), или с помощью команды. Если вы выбираете list из меню, вам поступит подсказка на отображение имени фильтра. Команда lpfilter выводит на экран определение фильтра в формате: /usr/sbin/lpfilter -f filter-name -l (optionally:) >file-name
7.3.5. Модификация фильтра
Чтобы выполнить модификацию фильтра с помощью меню, выберите этот элемент и введите имя фильтра, который будет модифицироваться. Вы можете ввести CHOICES, чтобы сделать выбор из списка возможных фильтров.
После того как фильтру присвоено имя, на экран выводится форма, которая используется для добавления фильтра, и вы можете изменить любой элемент. Чтобы модифицировать фильтр с помощью команды, вы можете еще раз ввести его или отобразить фильтр в файл, отредактировать этот файл, а затем вновь ввести фильтр.
7.3.5.1. Удаление фильтра
Чтобы удалить фильтр с помощью меню, выберите этот элемент и введите имя фильтра, который хотите удалить. Чтобы удалить фильтр с помощью команды, наберите следующее:
/usr/sbin/lpfilter -f filter-name -x
Примечание. Добавление, изменение или удаление фильтров может привести к тому, что запросы на распечатку, все еще стоящие в очереди, будут уничтожены. Из-за вероятности этого, вы, возможно, захотите внести изменения в фильтры в то время, когда LP используется не очень активно.
7.3.6. Предварительный формат распечатки
Предварительный формат распечатки представляет собой образец страницы пустого формата, который можно загружать в принтер, например, это могут быть пустые квитанции, поручительства, расписки, фирменные знаки...
В этой части описывается как управлять использованием предварительных форматов распечатки с помощью меню или команды. Выберите forms из меню Printer Services, что даст следующий формат:
3 Manage Pre-printed Forms ------------------------------------- add- Add a New Form list - List Form Attributes modify - Modify a Form remove - Remove Forms
LP выявляет какие запросы на распечатку требуют монтирования специальных форматов, и какие форматы смонтированы в текущий момент, и может предупредить вас о необходимости смонтировать новый формат.
7.3.7. Добавление или модификация формата
Когда вы выбираете add из меню, вы заполняете короткий формат, давая имя формату и именуя уже существующий формат. form-name содержит 14 или меньшее число символов, цифр и символ подчеркивания. Именованный формат является моделью для характеристик новых форматов. Затем вы редактируете те характеристики, которые в новом формате будут другими. Первоначально система обеспечивает пустой формат, носящий имя default-form. Когда будет определено несколько форматов, повторяющийся выбор CHOICES будет циклически повторять имена имеющихся в наличии форматов. Дальнейший выбор SAVE выведет на экран выбранный формат модели.
default-form такой:
5 Add/Modify Form <form-name> ------------------------------------------------------ Page length: Page width: Line pitch:Character pitch: Number of Pages: Character set choice: Ribbon color: Comment: Alignment pattern file: Alert command: Number of requests: (Only appears if an alert command is supplied) Frequency of alerts: (Only appears if an alert command is supplied) Users denied: Users allowed:
- Page length - длина формата или каждой страницы в многостраничном формате. Может быть выражена в виде множества строк, или размером в дюймах или сантиметрах;
- Page width - ширина формата, выраженная в колонках, дюймах или сантиметрах;
- Number of pages - количество страниц в многостраничном формате. LP использует это количество с фильтром (если такой есть в наличии), чтобы ограничить значение выравнивания до одного длинного формата. Если нет фильтра для усечения значения выравнивания, LP пропускает этот этап;
- Line pitch - насколько близко друг от друга расположены отдельные строки формата. Выражается или в строках на дюйм, или строках на сантиметр;
- Character pitch - насколько близко друг к другу расположены символы формата. Подобно шагам в строке выражается или в символах на дюйм, или в символах на сантиметр;
- Character set choice - набор символов, печатающее колесо или касета шрифтов, которые необходимо использовать, когда используется этот формат, если он специальный;
- Ribbon color - если формат всегда должен распечатываться с использованием определенного цвета ленты, то LP может напомнить какой цвет использовать при монтировании формата;
- Comment - любой комментарий, который вы хотите сделать по формату. Этот комментарий существует для того, чтобы можно было убедиться, что из себя представляет формат, когда его следует использовать;
-
Alignment Pattern - образец файла, который использует LP для заполнения одного пустого формата. При монтировании формата, вы можете проверить этот образец, чтобы убедиться, что распечатка выравнена по формату должным образом;
Примечание. Если вы не хотите, чтобы информация распечатывалась в форматах-образцах, что вполне вероятно при выравнивании квитанций, например, - то вам нужно наложить маску на требуемые данные. LP хранит значение выравнивания в надежном месте, откуда только вы (т.е. пользователь LP и суперпользователь root ) можете считать его.
- Allerting to Mount a Form or Print-Wheel - вы можете организовать механизм предупреждения, когда число запросов, ожидающих монтируемые формат или печатное колесо, превысит какой-то порог допустимого. Способом такой организации является подача команды, которую выдаст LP, когда такой порог будет достигнут. Скорее всего это будет команда mail или команда для записи сообщения на терминал. Вы можете также отказаться от получения предупреждений, в этом случае вы сами будете отвечать за контроль того, распечатан какой-то запрос или не распечатан по причине плохого монтирования формата.