假设我在当前目录中有一个 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_())
最佳答案
内置support用于编写 PDF 格式的文档,但不用于阅读。
要阅读 PDF 文档,您必须先使用第三方库,或使用外部工具将 pdf 转换为另一种格式(例如文本或 html)。
参见 here有关处理 PDF 文档的概述。
关于python - PyQt 打印原始 PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12262274/