我的目的是实现以下场景:
Windows或Linux用户提供打印文档的命令(使用Ctrl + P)并在可用打印机列表中查看虚拟打印机(虚拟打印机)
用户选择打印机并提供打印命令
虚拟打印机不是实际打印,而是自动将文件以及选定的纸张大小,格式等发送到python脚本作为输入[可选地在将其转换为PDF后]。
Python脚本将文件上传到云端或某个远程存储器,以便稍后在需要时在物理打印机上检索和打印。
我已经在StackOverflow上找到了类似的现有问题的答案,并查找了CUPS和CUPS-PDF。 CUPS_PDF是一个虚拟打印机,因此我满足一个标准,但它不能让我处理发送的文件进行打印。我可以监视转换后的PDF所在的目录,并在每次目录更改时调用python脚本,但这远非理想的解决方案。
我尝试在FILE打印机的形式下使用win32 API在Windows中创建类似的东西,但它也不能让我处理要打印的文件。
我也偶然发现了Tea4CUPS,它是CUPS打印机的一种可编程后端,但我不确定如何利用它。我遇到的另一个选择是使用Windows驱动程序工具包(WDK)编写虚拟打印机驱动程序,但这似乎过于复杂,特别是考虑到我需要虚拟打印机才能将要打印的文件重定向到我的python脚本。
如何实现我想要的方案?虽然我有Python经验,但在此之前我从未使用过虚拟打印机。
答案 0 :(得分:1)
使用RedMon。它是一个开源的Windows打印机端口,只需将所有打印机输出重定向到特定程序(如python脚本)。
以下程序适用于2015年发布的Windows 10: