Печать фотографий из консоли: lp.


В наличии имеется струйный принтер Canon IP3600, к которому недавно приобрел перезаправляемые картриджи и чернила - появилась необходимость распечатать несколько фото 10х15 и партию визиток сделанных в gimp-е, размещенных на лист А4 300dpi. 
 

Небольшое отступление о особенностях установки драйвера Canon IP3600 в linux (lubuntu 11.04)


 
Драйвера для принтера под linux есть на оффициальном сайте Canon, два deb-пакета, но без танцев с бубнами не обошлось. Пакеты не ставилились, ругаясь на отсутствие libcupsys2. Насколько я понял, функции libcupsys2 теперь выполняет libcups2, который у меня уже стоял, а устаревший драйвер ищет libcupsys2 вместо libcups2. Поэтому поставил с ключем --force-all для игнорирования ошибок:
 
dpkg -i --force-all *.deb
 
После этого подключил принтер и добавил его через графический (да простят мне боги отступление от веры) system-config-printer. Принтер установился и начал работать, но нельзя было больше установить ни одного программного пакета, т.к. при установке появлялись жалобы на неудовлетворенные зависимости с предложением запустить команду apt-get install -f , которая радостно сносила установленный драйвер.  Проблему решил удалением из файла /var/lib/dpkg/status в секциях cnijfilter-common и cnijfilter-ip3600series упоминаний о libcupsys2, в следствие чего менеджер пакетов забыл о неудовлетворенных зависимостях (знаю что некрасивое решение, но рабочее).  
 

Печать из консоли


 
Для вывода файла на печать в linux используется команда lp. Через команду lpoptions можно посмотреть основные параметры печати, поддерживаемые драйвером принтера:
 
lpoptions -p Canon-iP3600-series -l
Resolution/Output Resolution: *600dpi
ColorModel/Color Model: *rgb
PageSize/Page Size: Custom.WIDTHxHEIGHT Letter Letter.bl Legal A5 *A4 A4.bl B5 4X6 4X6.bl 4X8 4X8.bl 5X7 5X7.bl 8X10 8X10.bl l l.bl 2l 2l.bl postcard postcard.bl postdbl envelop10p envelopdlp envj4p envj6p businesscard businesscard.bl wide wide.bl
MediaType/Media Type: *plain glossygold prophoto2 proplatinum semigloss glossypaper matte highres ijpostcard postcard tshirt envelope otherphoto
InputSlot/Paper Source: auto asf *cassette continuous
CNExtension/Amount of Extension: *0 1 2 3
 
Или можно посмотреть все возможные параметры в /etc/cups/ppd/<имя принтера> .
 
Печать на лист формата A4 матовой фотобумаги меня удовлетворила при использовании следующих параметров: 
 
lp -d Canon-IP3600-series -n 10 -q 100 -o scaling=99 -o colormodel=rgb -o resolution=600 -o media=A4.bl -o mediatype=otherphoto -o cnextension=0 -o inputslot=asf -o position=center -o page-left=0 -o page-right=0 -o page-top=0 -o page-bottom=0 viz.jpg
 
где:
 
-d - Имя принтера;
-n - Число копий;
-q - Приоритет процесса печати;
-o scaling - Масштабирование. По идее наверно должно бы быть 100, но в моем случае при сотне картинка не помещалась на лист и края обрезались;
-o colormodel - Цветовая модель;
-o resolution - Разрешение печати в dpi;
-o media - формат листа, bl - печать без полей;
-o mediatype - тип бумаги;
-o cnextension - amount of extension - растягивание картинки для печати без полей. Возможные параметры 0..3 , чем больше число, тем больше растягивается печатаемая картинка;
-o inputslot - источник бумаги, asf- задний лоток, cassette- нижний лоток-кассета;
-o position - позиция документа на листе;
-o page-(left|right|top|bottom) - отступы слева, справа, сверху и снизу.
 
Для печати фото 10x15 без полей на глянцевой фотобумаге использую следующую команду:
 
lp -d Canon-IP3600-series -n 1 -q 100 -o scaling=100 -o colormodel=rgb -o resolution=600 -o media=4x6.bl -o mediatype=otherphoto -o cnextension=2 -o inputslot=asf -o position=center -o page-left=0 -o page-right=0 -o page-top=0 -o page-bottom=0 IMG_4499.JPG
 
Хочу заметить что использую не использую в опциях тип бумаги glossypaper, так как почему то неправильная цветопередача, слишком много желтого цвета. Если выбран тип otherphoto - цветопередача в норме.
 
Минус, который пока не удалось исправить - медленный вывод фото на принтер. На нетбуке с процессором intel atom 1,6ГГц на отправку фото на печать уходит около минуты, процессор при этом загружен на 100%. При печати нескольких копий одной фотографии подготовленный для отправки файл не кэшируется и, как следствие, между печатью копий перерыв примерно в одну минуту.

Sept. 29, 2012