使用python或shell命令打印到windows打印机

我正在尝试编写一个恼人的任务,涉及获取,处理和打印大量扫描的文档 – jpeg或pdf。 我没有成功从python或从Windowsshell(我可以脚本与Pythonsubprocess模块)访问打印机。 我用lpr命令成功地从命令行打印了一个文本文件,但不是jpg或者pdf。

很高兴有关的任何线索,其中包括更广泛的打印到打印机的win壳参考,一个合适的python库,我错过了我的谷歌searchstackoverflowsearch等(只有一个未解答的问题 )

Solutions Collecting From Web of "使用python或shell命令打印到windows打印机"

那么经过一些研究,我发现了一些可能对你有帮助的链接:

1)要使用Python Shell打印图像,下面的这个链接有一些使用PIL的代码,希望能做到你想要的: http : //timgolden.me.uk/python/win32_how_do_i/print.html

2)要打印PDF文件,这个链接可能有你需要的: http : //www.darkcoding.net/software/printing-word-and-pdf-files-from-python/

我从来没有做过这些事情,但是快速浏览一下,我可以找到这个链接,而且他们似乎很有道理。 希望能帮助到你 :)

我用这个rtf(只是一个想法):

subprocess.call(['loffice', '-pt', 'LaserJet', file]) 

我正在使用LibreOffice 。 它可以以批处理模式打印。

与一个默认的PDF查看器分配给系统,你可以做

  import win32api fname="C:\\somePDF.pdf" win32api.ShellExecute(0, "print", fname, None, ".", 0) 

请注意,这只适用于Windows,并不适用于所有pdf查看器,但对于acrobat和Foxit以及其他一些主要的应用程序应该是好的。