Reviews / articles about OS/2 |
Operating systems: ArcaOS, eComStation, IBM OS/2 Warp |
|
|
DATE: 2011-11-12 01:21:21 AUTHOR: Peter Brown
СОДЕРЖАНИЕ
Небольшое вступлениеСсылки на ресурсы поддержки: Это краткое руководство, надеюсь, будет полезно тем, кто хочет заставить работать современный принтер под управлением OS/2 или eComStation. Я расскажу о том, как на собственном опыте мне удалось, во-первых, "подружить" принтер Canon PIXMA iP4000 с CUPS и, во-вторых, создать OS/2 Printer Object, с помощью которого можно выводить задания печати через CUPS. Я указываю определенные буквы имен дисков и вам, возможно, придется заменить их на соответствующие буквы вашей системы. Большинство указанных путей характерны для инсталляции CUPS, а те что нет, возможно, также придется поменять на соответствующие пути в вашей системе.
Что такое CUPS и зачем это нужно?CUPS - это Common Unix Printing System (англ. - общая система печати для UNIX) или иначе говоря, сервер печати. Это общая библиотека (framework) для драйверов принтера. Установите CUPS, пакет драйверов, поддерживающий ваш принтер, и если все прошло нормально, вы сможете печатать :-). Подробнее о работе CUPS см. CupsFaq. Что поддерживает CUPS? - Поддержка конкретных моделей принтеров реализована в определенных пакетах драйверов. Список принтеров, поддерживаемых Gutenprint: http://gutenprint.sourceforge.net/p_Supported_Printers.php (это самый большой и наиболее часто используемый пакет драйверов) Список принтеров, поддерживаемых Splix: http://splix.ap2c.org/ (Splix поддерживает некоторые принтеры Samsung и Xerox) Список принтеров, поддерживаемых HPLIP: http://hplipopensource.com/hplip-web/supported_devices/index.html (HPLIP поддерживает различные принтеры Hewlett-Packard) Зачем устанавливать CUPS? - Она поддерживает множество современных принтеров и от версии к версии это количество увеличивается. Старые драйверы принтеров из OS/2 не очень-то "дружат" с современными принтерами. Даже если вам удастся найти драйвер, работающий с вашим современным принтером, эти драйверы не обновляются и не поддерживают всех функций. А драйверы CUPS - поддерживают. CUPS предоставляет драйверы для большого числа новых принтеров и поддерживают многие дополнительные функции, поддержки которых нет в драйверах OS/2. Грубо говоря, CUPS "обманывает" ОС и приложения, заставляя думать, что они имеют дело с PostScript-принтером даже если это и не так. PostScript - это хорошо поддерживаемый и стандартизированный язык принтеров; основная задача состоит в создании eComStation (OS/2) PostScript Printer Object, который печатает с помощью CUPS.
Список необходимого ПОПорт CUPS находится по адресу: http://svn.netlabs.org/ecups/wiki/CupsPort - его можно загрузить в формате WPI (все пакеты) или в виде индивидуальных ZIP-файлов. Если вы загружали отдельные файлы, учтите, что вам понадобятся следующие пакеты. Необходимы:
Могут понадобится:
Далее следует более подробное описание.
Краткое описание пакетов программCUPS состоит из нескольких работающих совместно пакетов, которые эмулируют PostScript-печать на растровых принтерах. Ключевые компоненты для всех платформ - демон CUPS, GhostScript, и пакеты драйверов (Gutenprint, Splix, HPLIP и пр.). Остальные пакеты характерны для порта OS/2 port (a.k.a. eCups):
Компонент порта драйвера особенно важен т. к. обычные приложения OS/2 знают только о том, как печатать в OS/2 Printer Object, а не в принтер CUPS! Происходит следующее: OS/2 Printer Object посылает данные печати на порт (скажем, параллельный/последовательный/USB-порт или на сетевую очередь LPR и пр.), который определен драйвером порта. В этом случае мы реализуем еще один тип порта, доступный как и предыдущие. Этот драйвер позволяет "движку" печати OS/2 общаться с демоном CUPS. Демон же общается с физическим принтером через сеть, либо по USB-соединению (используя т. н. "бекэнд", который является собственным внутренним эквивалентом драйвера порта). Обратите внимание на то, что драйвер USB порта OS/2 не используется при работе с USB-принтером через CUPS - всегда используется драйвер порта CUPS, а затем демон CUPS контролирует непосредственный IO-трафик к принтеру. То же самое происходит и с другими соединениями, напр., сетевыми - во всех случаях соединением управляет CUPS. Пока CUPS не работает с внешними программами, поток данных представляет собой следующее: ПРИНТЕР <-> "бекэнд" драйвера ввода-вывода <-> демон CUPS (CUPSD.exe) <-- веб-страница администрирования CUPS (настройка, тестовая печать и пр.) Приведенного выше достаточно для печати с использованием собственных внутренних механизмов CUPS. Драйвер порта совместно с OS/2 Printer Object позволяет обычным программам OS/2 (которые и понятия не имеют о CUPS) использовать для печати CUPS-принтеры. Поток данных становится таким: ПРИНТЕР <-> "бекэнд" драйвера ввода-вывода <-> демон CUPS (CUPSD.exe) <-> драйвер порта eCups (CUPS.PDR) <-> драйвер PostScript-принтера (ECUPS.PDR) <-> OS/2 поддержка принтера <-> приложение OS/2.
УстановкаВ настоящее время доступен WarpIN-пакет (см. страницу CupsPort), но он все еще экспериментальный и может не соответствовать последней версии. Поэтому в дальнейшем будем предполагать ручную установку из zip-файлов. Базовая установка CUPS (используя Gutenprint) заключается в распаковке пакетов в корневой каталог диска (диск не должен быть загрузочным):
Остальные файлы могут быть распакованы сразу же или позже по мере надобности и размещены следующим образом:
Если вы устанавливаете один из поддерживаемых пакетом Splix принтеров Samsung или Xerox, установите Splix вместо Gutenprint. Аналогично для HPLIP. Замечание: использование Splix или HPLIP не рассматривается.
Настройка CUPS-принтераЛокальные принтеры, подключенные через параллельный порт CUPS в настоящее время не поддерживает напрямую печать на принтеры, подключенные через параллельный порт, но решение проблемы есть.
Создавая принтер CUPS в секции ниже (CUPS-принтер), используйте
lpd://localhost/
Замечание: View page может отличаться от имени, данного принтеру при создании.
Напр., если вы создали принтер с именем объекта Canon iP4000, в папке Printers
откройте свойства этого принтера и проверьте имя, отображаемое на странице View
- оно будет CanoniP4. Соотв., в примере выше URI устройства должен быть
lpd://localhost/CanoniP4
Хочу выразить благодарность Rodney и всем тем, кто сообщил эту информацию про использование
локально-подключенных принтеров с CUPS.
Локальные принтеры, подключенные через USB-порт
Установка проводилась на eComStation 2.0 RC6a. Известно, что старые версии
файлов поддержки USB в системе могут вызывать проблемы, поэтому установите
свежие файлы поддерки USB для OS перед началом настройки принтера.
(т. е. USBCALLS)
Если ваш принтер подключается по USB, загрузите USB-бекэнд распакуйте zip-файл
в каталог \cups\lib\cups\backend.
Мне известно, что последние версии пакета CUPS уже содержат usb.exe, поэтому
остается лишь убедиться, что он находится в каталоге \cups\lib\cups\backend.
Для этого из командной строки зайдите в этот каталог, убедитесь, что принтер
включен и выполните usb.exe без параметров - должно получиться следующее:
Если подобное сообщение не выводится, убедитесь, что поддержка USB работает
нормально и что вы подключили принтер заведомо исправным кабелем к заведомо
исправному порту.
[By putting usb.exe into the backends directory when cupsd.exe starts it knows
that when asked by the web administration page, that it should check USB ports
as well as network and other ports for new devices. - ???]
вариант перевода этого кусочка:
[Поставив (Установленный) usb.exe в каталог бэкэнды в момент, когда cupsd.exe
запускает его, знает, что на запрос веб-страницы администрирования, он должен проверить
USB-порты, а также проверить сети и другие порты для новых устройств.]
Выполните \cups\sbin\cupsd.exe
[I created a program object for this with the Start Minimized and Close Window
on exit checked in the Properties, Session tab; - ???]
Я создал программный объект для этого в начале свернутое и закрытое окно
при выходе проверяются в Свойствах, вкладке сессии;
в свойствах объекта также нужно указать Working directory: Drive:\cups\sbin
(где Drive имя диска, на котором установлена система печати CUPS).
Я советую использовать веб-интерфейс CUPS для установки нового принтера.
Зайдите по адресу http://localhost:631/ (страница CUPS) и щелкните Add Printer.
Я добавил (подключенный по сети) цветной растровый inkjet-принтер Canon PIXMA
и буду использовать его в качестве примера.
Имя: PIXMA - имя, которое вы дали вашему принтеру.
Местоположение: Router LPT1 - физическое местоположение принтера; т. е.
подключенный к порту LPT1 роутера.
Описание: Canon PIXMA iP4000 Inkjet - краткое описание принтера
Continue - нажмите если настройки вас устраивают и вы готовы продолжить
Device: выберите соответствующий тип подключения устройства т. е. LPD/LPR Host
или Printer
IPP для USB-принтеров - обнаруженный принтер должен быть доступен для выбора.
Для других типов подключения потребуется дополнительная информация.
Пример: Device URI: lpd://192.168.2.1/lpt1 - адрес устройства для
LPD-принтера
Continue - если настройки вас устраивают, нажмите эту кнопку
[Make: Canon - select printer make - for USB printers, an attempt will be made
to confirm the correct PPD file to use - ???]
[Canon - выбрать принтер сделать - для USB-принтеров, будет сделана попытка,
чтобы подтвердить правильный файл PPD использовать]
Continue - если настройки вас устраивают, нажмите эту кнопку
Model: Canon PIXMA iP4000 - CUPS+Gutenprint v5.2.0-beta3(en) Simplified - выберите корректный драйвер; рекомендуется Simplified
Add Printer - если настройки вас устраивают, нажмите эту кнопку
После нажатия на кнопку "Add Printer" интерфейс сообщит о том, что принтер был добавлен и загрузит параметры принтера - это может занять некоторое время. Советуем просмотреть параметры и убедиться, что они вам подходят. Особенно это касается Media Size, Resolution и Image Type. Если настройки вас устраивают, нажмите кнопку "Set Printer Options" и программа сообщит, что "Printer PIXMA has been configured successfully."
Затем я нажал на вкладку Printers и на кнопку Print Test Page. Вскоре тестовая
страница показалась из принтера.
Все довольно просто...
Обратившись к файлу readme.os2, я воспользовался командной строкой чтобы
напечатать двухстраничный документ; открыв окно командной строки в \cups\bin,
я набрал:
[H:\cups\bin]lpr -P PIXMA \cups\share\cups\data\PReCS20.ps
После недолгой паузы принтер "зашевелился" и "выплюнул" 2 качественно напечатанных страницы.
Нет ничего проще...
Прежде всего, откройте в браузере страницу http://localhost:631/
Откройте вкладку Administration
Затем нажмите "Find new printers"
В данном случае, поскольку мой принтер подключен к сети и соединен USB-кабелем
с моим ПК, перечислены оба подключения - выберите тот, который хотите настроить.
Описание уже заполнено, но вы можете изменить текст по своему усмотрению.
Выберите подходящий драйвер принтера - в моем случае, поскольку Officejet 6310
в списке отсутствовал, я выбрал OJ 7110 т. к. выяснил, что он работает хорошо
(этот выбор всегда можно изменить).
Установите параметры для принтера, используемые по умолчанию.
Готово! Вы настроили ваш принтер для работы с CUPS - нажмите "send test page"
чтобы распечатать тестовую страницу. Следующий этап - создание OS/2 print
object для печати на CUPS Daemon - подробнее см. ниже.
Теперь займемся сопряжением CUPS с операционной системой чтобы иметь возможность
печати в CUPS из приложений, таких как OpenOffice.org Writer (текстовый
процессор) и PMView (графика).
Укажите имя принтера - в данном случае "PIXMA"
Выберите порт вывода - я изначально использовал LPT1 и установил драйвер порта
принтера cups позже.
Выберите (pscript) драйвер для принтера - Canon PIXMA iP4000
Выберите вкладку 'Printer driver'
Убедитесь, что драйвер принтера по умолчанию выбран верно
Установите свойства печати (Job Properties): параметры Paper Size
(размер бумаги), Tray (способ подачи), Media Type (тип носителя),
Resolution (разрешение) должны совпадать с настройками CUPS-принтера - и
нажмите Save
Выберите вкладку 'Output port'
Нажмите кнопку 'Install new port'
Выберите "CUPS port" и нажмите 'Install'
- каждый подключенный через CUPS дополнительный принтер, который вы хотите
установить, получит свой собственный CUPS-порт: CUPS1, CUPS2, CUPS3 и т.д.)
Если порт не отображается, а файл CUPS.pdr находится в каталоге \os2\dll,
нажмите "install new port/New port drivers", укажите каталог \os2\dll и
нажмите 'Refresh'. CUPS-порт должен появиться, выберите его и нажмите
"install".
Щелкните правой кнопкой мыши по CUPSx CUPSPORTx и выберите свойства.
Для работы CUPS-порта нужно указать настройки:
Закройте 'свойства принтера'.
На этом настройка завершена. Пришло время напечатать тестовую страницу.
Вы должны получить тестовую страницу, напечатанную из вашего OS/2 Desktop
Printer Object
Следующий шаг - напечатать многостраничный документ из вашего любимого текстового
процессора, а затем попробовать используя ваш новый OS/2 Desktop Printer
печатать документы разных типов из различных приложений, напр., фотографии из
PMView.
Откройте папку принтеров и нажмите "add printer":
Выберите local printer.
Нажмите "install printer driver", затем "other printer driver location" и
укажите, куда вы поместили драйвер принтера eCUPS ( \OS2\DLL\CUPS , как
говорилось ранее) - затем нажмите refresh. Отобразятся все принтеры в файле
CUPS, выберите драйвер вашего принтера (или подобного) и нажмите Install.
Нажмите ОК чтобы загрузить драйвер. Измените имя принтера "printer" на что-то
более осмысленное и нажмите "создать" - printer object будет создан и диалог
установки закроется (но это еще не все...).
Откройте свойства вашего нового объекта принтера, выберите вкладку "printer driver", убедитесь что новый драйвер указан в каждом из полей.
Теперь вы можете нажать кнопку "job properties" если хотите, но вы убедитесь,
что настройки точно такие же как те, что вы указали при создании принтера на
странице администрирования CUPS. Если вы откроете свойства драйвера принтера,
то сможете тоже установить несколько параметров. Обычно я оставляю их как есть. Теперь нажмите на вкладку "output port", а затем "install new port":
Т.к. вы поместили eCUPS Port Driver в каталог OS2\DLL ранее, сейчас вам будет
доступно для выбора огромное количество драйверов CUPS - просто выберите CUPS1
и нажмите "install"
Щелкните дважды на новом драйвере порта, отобразится панель настройки - здесь
можно "связать" систему печати OS/2 с системой печати CUPS!
Первое поле с надписью "localhost" оставляем как есть т.к. принтер подключен к
этому ПК. Если бы он был подключен к CUPS, выполняющейся на другой машине,
здесь можно было бы указать IP-адрес или hostname того компьютера.
И в подтверждение вышеизложенного...
Вот диалог печати Firefox с новым подключенным через CUPS принтером, готовым к
печати как и любой другой принтер OS/2!
Удачи и спасибо Paul Smedley за отличную работу!
Другие авторы текста:
Piano Launchpad - стартовая площадка для любимых программ.
Комментарии: |
|
|||||||||||||||||||||||||||||||||||||||||
(C) OS2.GURU 2001-2021