Легкая печать с мобильных устройств или AirPrint без AirPrint

от автора

Как оказалась, далеко не все мои знакомые пользующие планшеты и смартфоны не первый год, не знают как сбросить на почту страницу из Safari, не говоря уж от том как её распечатать . Тоже самое можно сказать и про владельцев Android. — этим значком мало кто пользуется.
Хочу поделиться с хабраобществом опытом расшаривания домашнего принтера для мобильных устройств. Кому интересно прошу подкат.

необходимо: Наличие установленных CUPS (google в помошь) и Avahi (тут и тут ) сервисов, ну и разумеется WiFi

IOS

  • Расшариваем принтер, заходим «youserver:631/admin» устанавливаем флажок «Share printers connected to this system» "
  • Перезапускаем CUPS
    sudo /etc/init.d/cups restart 
  • Открываем Safari или почту, нажимаем стрелку -> «Напечатать».

Бежим к принтеру смотреть что получилось.

Android
1 устанавливаем Lets Print Droid
2. В настройках добавляем принтер "+New Printer"->«Enter printer adress myself».
Вводим:

  • любое имя принтера: «Мой принтер»
  • Protocol: «PIP-IPP/CUPS»
  • IP Address: printer_ip_addres
  • Port: 631
  • Share : "/printers/Имя_шары" — пишем как принтер определяется в сети
  • Page Description Language: — тут все зависит от принтера подбирается опытным путем, у меня HP LJ 1018 «JPG — RAW Jpeg or PDF Image»

тестируем:

  • Заходим в браузер выбираем станицу для печати
  • заходим в меню выбираем «отправить в»
  • ищем Lets Print Droid
  • выбираем принтер
  • отправляем на печать.

Можно воспользоваться любым другим приложением у которого есть в меню «Отправить в» или значек

P.s. Для (не)счастливых обладателей IOS6 и выше.

C вводом новой версии IOS господа из Купертино сменили формат печати, с PDF перешли на URF.
Для возможности печати под IOS6 необходимо проделать следующее:
создать на сервере два следующих файла в директории /usr/share/cups/mime/,
1. airprint.types

# # "$Id: $" # # AirPrint type  image/urf urf string(0,UNIRAST<00>) # # End of "$Id: $". # 

2.airprint.convs

# # "$Id: $" # # AirPrint # Updated list with minimal set 25 Sept image/urf application/pdf 100 pdftoraster # # End of "$Id: $". # 

Перезапускаем CUPS

 sudo /etc/init.d/cups restart 

если не установлен, устанавливаем

apt-get cups-python 

Далее создаем файл описания сервиса для Avahi:

wget https://raw.github.com/tjfontaine/airprint-generate/master/airprint-generate.py 

Даем права на выполнение airprint-generate.py и запускаем

chmod +x airprint-generate.py ./airprint-generate.py 

копируем полученное

mv AirPrint-PDF.service /etc/avahi/services/ 

и повторно запускаем и перезапускаем Avahi

./airprint-generate.py -d /etc/avahi/services sudo service avahi-daemon restart 

Все принтер готов для печати.
Пруф:

ссылка на оригинал статьи http://habrahabr.ru/post/201332/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *