14.08.2022

Доступен PAPPL 1.1, фреймворк для организации вывода на печать

Майкл Свит (Michael R Sweet), автор системы печати CUPS, представил выпуск PAPPL 1.1, фреймворка для разработки приложений для печати на базе протокола IPP Everywhere, которые рекомендуется использовать вместо традиционных драйверов для принтеров. Код фреймворка написан на языке Си и распространяется под лицензией Apache 2.0 с исключением, разрешающим связывание с кодом под лицензиями GPLv2 и LGPLv2.

В новой версии:

  • Добавлена возможность настройки через Wi-Fi.
  • Появилась поддержка доступа к принтеру при помощи протокола IPP-over-USB (IPP-USB).
  • Реализован поиск подходящих драйверов для принтера и автоматическое добавление расширенной функциональности.
  • Добавлен режим PAPPL_SOPTIONS_NO_TLS для отключения TLS-шифрования.
  • Добавлены кнопки и команды для приостановки и возобновления работы принтера.
  • Добавлен API papplSystemSetAuthCallback API для поддержки альтернативных механизмов аутентификации.
  • Реализована опция для включения сжатия.
  • Улучшено одновременное управление сразу несколькими принтерами.
  • Добавлена поддержка платформ Windows 10 и 11.

Напомним, что фреймворк PAPPL изначально разработан для поддержки системы печати LPrint и драйверов Gutenprint, но может быть использован для реализации поддержки любых принтеров и драйверов при выводе на печать на настольных, серверных и встраиваемых системах. Предполагается, что PAPPL сможет способствовать ускорению продвижения технологии IPP Everywhere вместо классических драйверов и упрощению поддержки других программ на основе IPP, таких как AirPrint и Mopria.

PAPPL включает встроенную реализацию протокола IPP Everywhere, предоставляющего средства для доступа к принтерам локально или по сети и обработки запросов по выводу на печать. IPP Everywhere работает в бездрайверном режиме («driverless») и в отличие от драйверов PPD не требует создания статических файлов конфигурации. Поддерживается взаимодействие с принтерами как напрямую через локальное подключение принтера по USB, так и обращение по сети при помощи протоколов AppSocket и JetDirect. Данные могут отправляться на принтер в форматах JPEG, PNG, PWG Raster, Apple Raster и «raw».

PAPPL может быть собран для POSIX-совместимых ОС, включая Linux, macOS, QNX и VxWorks. Из зависимостей отмечается Avahi (для поддержки mDNS/DNS-SD), CUPS, GNU TLS, JPEGLIB, LIBPNG, LIBPAM (для аутентификации) и ZLIB. На базе PAPPL проектом OpenPrinting развивается универсальное приложение PostScript Printer Application, способное работать как с современными IPP-совместимыми принтерами (используется PAPPL), поддерживающими PostScript и Ghostscript, так и со старыми принтерами, для которых имеются драйверы PPD (применяются фильтры cups-filters и libppd).

Источник.