PAPPL 1.3,一个用于组织打印输出的框架可用

CUPS 打印系统的作者 Michael R Sweet 宣布发布 PAPPL 1.3,这是一个用于开发 IPP Everywhere 打印应用程序的框架,建议使用它来代替传统的打印机驱动程序。 该框架代码是用 C 语言编写的,并在 Apache 2.0 许可证下分发,但允许链接到 GPLv2 和 LGPLv2 许可证下的代码。

PAPPL 框架最初设计用于支持 LPrint 打印系统和 Gutenprint 驱动程序,但可用于实现对任何打印机和驱动程序的支持,以便在桌面、服务器和嵌入式系统上进行打印。 预计 PAPPL 将能够帮助加速 IPP Everywhere 技术的进步,取代传统驱动程序,并简化对其他基于 IPP 的程序(如 AirPrint 和 Mopria)的支持。

PAPPL 包括 IPP Everywhere 协议的本机实现,该协议提供了本地或通过网络访问打印机并处理打印请求的方法。 IPP Everywhere 在无驱动模式下运行,与 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 打印机应用程序,能够与支持 PostScript 和 Ghostscript 的现代 IPP 兼容打印机(使用 PAPPL)以及可使用 PPD 驱动程序(cups-filters 和使用 libppd 过滤器)。

新版本的变化包括:

  • 添加了保留和恢复打印作业的功能。
  • 添加了设备管理操作的调试日志记录。
  • 添加了对使用内置分辨率信息缩放 PNG 图像的支持。
  • 可以在网页顶部显示本地化横幅,其中包含有关打印机和系统的信息。
  • 添加了 API 来控制定期执行任务的启动。
  • 通过回调调用配置网络的功能已经实现。
  • 添加了 API 以限制 JPEG 和 PNG 图像的最大尺寸。
  • 添加了对在 ThreadSanitizer 模式下在 Clang/GCC 中构建的支持 (-enable-tsanitizer)。
  • Wi-Fi 密码输入字段中添加了一个按钮以显示密码。

来源: opennet.ru

添加评论