Michael Sweet, autor systému tisku CUPS, představil vydání PAPPL 1.2, rámce pro vývoj aplikací pro tisk na základě protokolu IPP Everywhere, který se doporučuje používat namísto tradičních ovladačů tiskáren. Kód rámce je napsán v jazyce C a je distribuován pod licencí Apache 2.0 s výjimkou umožňující vazbu na kód pod licenci GPLv2 a LGPLv2.
Medzi zmenami v novej verzii:
- Byla přidána kompletní podpora lokalizace. Základní lokalizační sady byly navrženy pro angličtinu, francouzštinu, němčinu, italštinu, japonštinu a španělštinu.
- Byla vylepšena podpora platformy macOS. Byla zajištěna integrace s horním globálním menu macOS. Byla přidána možnost provádění aplikací pro tisk v režimu servera.
- Byla přidána podpora interpolace při tisku JPEG obrázků nebo při použití funkce papplJobFilterImage se zapnutým vyhlazováním.
- Byly implementovány další funkce protokolu IPP (Internet Printing Protocol) a přidány nové API: papplDeviceGetSupplies pro určení úrovně inkoustu a toneru, papplSystemAddEvent/papplSubscriptionXxx pro zpracování IPP oznámení, papplSystemGet/SetMaxClients pro omezení počtu klientů. Do funkcí papplPrinterDisable a papplPrinterEnable byla přidána podpora IPP atributu „printer-is-accepting-jobs“.
- Byla přidána možnost nastavit vlastní velikosti listů v milimetrech.
- Byla přidána podpora knihoven OpenSSL a LibreSSL.
- Byl aktualizován kód USB Gadget, který se používá pro vytváření klientských USB zařízení a softwarovou simulaci USB zařízení.
- Bylo zajištěno přiřazení uživatelského adresáře se spouštěcím zařízením, které se aplikuje jako výchozí.
- Byla vylepšena kompatibilita s knihovnou libcups3.
Rámec PAPPL byl původně vyvinut na podporu systému tisku LPrint a ovladačů Gutenprint, ale může být použit k realizaci podpory jakýchkoliv tiskáren a ovladačů při tisku na desktopových, serverových a vestavěných systémech. Předpokládá se, že PAPPL pomůže urychlit prosazování technologie IPP Everywhere místo klasických ovladačů a zjednoduší podporu dalších programů založených na IPP, jako jsou AirPrint a Mopria.
PAPPL zahŕňa vstavanú implementáciu protokolu IPP Everywhere, ktorá poskytuje prostriedky na prístup k tlačiarňam lokálne alebo cez sieť a spracovanie požiadaviek na tlač. IPP Everywhere funguje v režime bez ovládača („driverless“) a na rozdiel od ovládačov PPD nevyžaduje vytvorenie statických konfiguračných súborov. Podporuje interakciu s tlačiarňami ako priamo cez lokálne pripojenie tlačiarne cez USB, tak aj sieťovo pomocou protokolov AppSocket a JetDirect. Dáta môžu byť odosielané na tlačiareň vo formátoch JPEG, PNG, PWG Raster, Apple Raster a „raw“.
PAPPL môže byť zostavený pre POSIX-kompatibilné OS, vrátane Linuxu, macOS, QNX a VxWorks. Medzi závislosťami sú uvedené Avahi (pre podporu mDNS/DNS-SD), CUPS, GNU TLS, JPEGLIB, LIBPNG, LIBPAM (pre autentifikáciu) a ZLIB. Na základe PAPPL sa projektom OpenPrinting vyvíja univerzálna aplikácia PostScript Printer Application, ktorá dokáže pracovať ako s modernými IPP-kompatibilnými tlačiarňami (používa PAPPL), ktoré podporujú PostScript a Ghostscript, tak aj so staršími tlačiarňami, pre ktoré sú dostupné ovládače PPD (používajú sa filtre cups-filters a libppd).
Zdroj: opennet.ru
