我正在尝试创建一个脚本,打印每一个现有的pdf与特定的打印机驱动程序。我在Windows 10上工作。我认为最好的方法是更改每个文件的默认驱动程序,例如:
import win32print
import win32api
# print testfile1.pdf with copy 1 of the driver
# which has default "print on both sides"
win32print.SetDefaultPrinter('iR 5880C EUR(1)')
win32api.ShellExecute(0,'print','testfile1.pdf','.',None,0)
# print testfile2.pdf with copy 2 of the driver
# which has default "print on 1 side"
win32print.SetDefaultPrinter('iR 5880C EUR(2)')
win32api.ShellExecute(0,'print','testfile2.pdf','.',None,0)但是,在打印testfile1.pdf时,使用相同的驱动程序打印testfile2.pdf。原因是这些文件是使用Adobe Acrobat PRO DC打印的,打印testfile1.pdf后需要关闭该DC,以了解默认打印机已更改。有没有办法在打印testfile1.pdf后关闭Adobe Acrobat PRO DC?
发布于 2020-02-11 22:20:48
我的估计是在每次作业后结束与Adobe Acrobat Pro相关的过程。这可以通过win32process.TerminateProcess来处理。win32process.CreateProcess返回TerminateProcess所需的PyHANDLE参数。希望这能对你有所帮助。
https://stackoverflow.com/questions/60167819
复制相似问题