PAPPL 1.2 ist verfügbar, ein Framework für die Druckausgabe.

Michael R Sweet, der Autor des Drucksystems CUPS, hat die Version PAPPL 1.2 vorgestellt, ein Framework zur Entwicklung von Druckanwendungen basierend auf dem Protokoll IPP Everywhere, das anstelle herkömmlicher Druckertreiber verwendet werden sollte. Der Code des Frameworks ist in C geschrieben und wird unter der Apache 2.0-Lizenz mit einer Ausnahme veröffentlicht, die das Verlinken mit Code unter den Lizenzen GPLv2 und LGPLv2 erlaubt.

Zu den Neuerungen in der neuen Version gehören:

  • Umfassende Unterstützung für Lokalisierung hinzugefügt. Grundlegende Lokalisierungssätze werden für Englisch, Französisch, Deutsch, Italienisch, Japanisch und Spanisch angeboten.
  • Die Unterstützung der macOS-Plattform wurde verbessert. Die Integration mit dem oberen globalen Menü von macOS wurde sichergestellt. Es wurde die Möglichkeit hinzugefügt, Druckausgabeanwendungen im Modus auszuführen. Server.
  • Die Unterstützung für die Interpolation beim Drucken von JPEG-Bildern oder bei der Verwendung der Funktion papplJobFilterImage mit aktivierter Glättung wurde hinzugefügt.
  • Zusätzliche Funktionen des IPP (Internet Printing Protocol) wurden implementiert und neue APIs hinzugefügt: papplDeviceGetSupplies zur Bestimmung des Tinten- und Tonerstands, papplSystemAddEvent/papplSubscriptionXxx zur Verarbeitung von IPP-Benachrichtigungen, papplSystemGet/SetMaxClients zur Begrenzung der Anzahl der Clients. In den Funktionen papplPrinterDisable und papplPrinterEnable wurde die Unterstützung für das IPP-Attribut „printer-is-accepting-jobs“ hinzugefügt.
  • Die Möglichkeit zur Festlegung eigener Papiergrößen in Millimetern wurde hinzugefügt.
  • Unterstützung für die Bibliotheken OpenSSL und LibreSSL wurde hinzugefügt.
  • Der USB Gadget-Code, der zum Erstellen von Client-USB-Geräten und zur Software-Simulation von USB-Geräten verwendet wird, wurde aktualisiert.
  • Die Bindung des Standarddruckspoolverzeichnisses an den Benutzer wurde sichergestellt.
  • Die Kompatibilität mit der Bibliothek libcups3 wurde verbessert.

Das PAPPL-Framework wurde ursprünglich zur Unterstützung des Drucksystems LPrint und der Gutenprint-Treiber entwickelt, kann jedoch zur Implementierung der Unterstützung für beliebige Drucker und Treiber für den Druck auf Desktop-, Server- und Embedded-Systemen verwendet werden. Es wird angenommen, dass PAPPL dazu beiträgt, die Technologie IPP Everywhere im Vergleich zu klassischen Treibern voranzutreiben und die Unterstützung anderer IPP-basierter Programme wie AirPrint und Mopria zu vereinfachen.

PAPPL enthält eine integrierte Implementierung des IPP Everywhere-Protokolls, das Ressourcen für den Zugriff auf Drucker lokal oder über das Netzwerk sowie zur Verarbeitung von Druckanfragen bereitstellt. IPP Everywhere funktioniert im driverless-Modus und erfordert im Gegensatz zu PPD-Treibern keine Erstellung statischer Konfigurationsdateien. Es wird unterstützt, entweder direkt über eine lokale USB-Druckerverbindung oder über das Netzwerk mit den Protokollen AppSocket und JetDirect auf Drucker zuzugreifen. Daten können im JPEG-, PNG-, PWG Raster-, Apple Raster- und „raw“-Format an den Drucker gesendet werden.

PAPPL kann für POSIX-kompatible Betriebssysteme kompiliert werden, einschließlich Linux, macOS, QNX und VxWorks. Zu den Abhängigkeiten gehören Avahi (zur Unterstützung von mDNS/DNS-SD), CUPS, GNU TLS, JPEGLIB, LIBPNG, LIBPAM (für die Authentifizierung) und ZLIB. Auf der Basis von PAPPL entwickelt das OpenPrinting-Projekt eine universelle Anwendung namens PostScript Printer Application, die sowohl mit modernen IPP-kompatiblen Druckern (verwendet PAPPL), die PostScript und Ghostscript unterstützen, als auch mit älteren Druckern, für die PPD-Treiber verfügbar sind (verwenden die Filter cups-filters und libppd), arbeiten kann.

Quelle: opennet.ru

60GB SSD 8Gb DDR4