假设我在当前目录中有一个 test.pdf 文件,我想使用 PyQt gui Printer 将此原始文件发送到打印机。
以下Python3代码打印PDF源代码!我不希望Qt为我构建PDF,只需使用gui对话框将其发送到打印机。
这适用于任何操作系统,(无lp
命令)...假设打印机设备本身可以理解PDF。
import sys, PyQt4.QtCore, PyQt4.QtGui
def pdf():
pdf = open('test.pdf', encoding='utf-8').read() # ascii PDF here
doc = PyQt4.QtGui.QTextDocument(pdf)
printer = PyQt4.QtGui.QPrinter()
dialog = PyQt4.QtGui.QPrintDialog(printer)
if dialog.exec_() == True:
doc.print_(printer)
if __name__ == '__main__':
app = PyQt4.QtGui.QApplication(sys.argv)
w = PyQt4.QtGui.QWidget()
but = PyQt4.QtGui.QPushButton('Print', w)
but.clicked.connect(pdf)
PyQt4.QtGui.QVBoxLayout(w).addWidget(but)
w.show()
sys.exit(app.exec_())