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
