用途:将图片和 PDF 文件打印到任意 CUPS 打印机,所有设置(纸张尺寸、边距、分辨率、双面)在运行时从打印机 PPD 文件读取。入口脚本为 {baseDir}/scripts/print.py,安装前提与平台说明见 SETUP.md。
主要能力:列出可用打印机及状态和系统默认项;打印 PDF 或图片;查看打印机信息(厂商、型号、分辨率、彩色支持、默认纸张、双面模式、进纸盒及各纸张尺寸边距);查看全部 CUPS 选项及当前值和可选值。图片(PNG、JPG、GIF、BMP、TIFF、WebP)会按打印机原生 DPI 转换为 PDF,并在可打印区域内居中后打印。
使用方式: 列出打印机:python3 {baseDir}/scripts/print.py list(加 --json 输出机器可读结果)。 打印文件:python3 {baseDir}/scripts/print.py print /path/to/file.pdf,图片同理;用 --printer "Custom_Printer" 指定打印机;用 -o KEY=VALUE 传入任意 CUPS 选项,可重复,例如 -o InputSlot=tray-2、-o cupsPrintQuality=High -o sides=one-sided。 查看信息:python3 {baseDir}/scripts/print.py info。 查看选项:python3 {baseDir}/scripts/print.py options。 以上命令均支持 --printer 和 --json。
适用场景:需要在命令行或自动化流程中向 CUPS 打印机输出 PDF 与常见图片格式,并按打印机实际能力选择纸张、进纸盒、质量、双面等参数。
限制:仅接受 PDF、PNG、JPG、GIF、BMP、TIFF、WebP 这些可打印类型;符号链接会被跟随,但解析后的路径必须位于工作区或 /tmp 内;未指定 --printer 时使用系统默认打印机。部分 PPD 的 InputSlot 命令字符串为空,单独使用 -o InputSlot=tray-2 可能无效,可改用组合 media 关键字,如 -o media=A6,tray-2,envelope,格式为 -o media=SIZE,TRAY,TYPE,通过 IPP 直接传递以绕过 PPD。其他安装细节与平台注意事项暂未提供。