我正在使用 cups 在 Linux 上的自定义类型打印机上打印非常大的图像。
由于内存限制,图像被分成几块。每块都使用 cupsPrintFile() 函数发送到打印机 - 该函数设置仅在最后一幅图像上进行进纸和剪切等选项。目的是发送所有较小的图像以创建原始的大图像。
我的问题是,如何对打印作业进行分组以避免其他用户打印到同一台打印机并在同一图像的块之间发送作业?
(我知道打印机协议正在做完全相反的事情,优化资源,它们允许不同的作业按顺序处理......但在这种情况下,这将非常糟糕)。
(另一种方法是使用 cupsPrintFiles 将所有必需的文件作为单个作业发送 - 问题是它们都具有相同的打印选项,我无法弄清楚如何为最后一个文件设置不同的页面大小,它会更小)。
如果有任何允许对打印作业进行分组的 cups 命令那就太好了,因为我可以尝试找到等效的 c++ 命令或者只是尝试从代码内的 shell 运行终端命令...
答案1
我用的是2目录脚本来创建虚拟打印机,然后组合生成的打印作业。