5

現在のディレクトリにtest.pdfファイルがあると仮定すると、この生ファイルをPyQt gui Printerを使用してプリンターに送信したいと思います。

次の Python3 コードは、PDF ソース コードを出力します。Qt に PDF を作成させたくありませんが、GUI ダイアログ ボックスを使用してプリンターに送信するだけです。

これは、任意の OS (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_())
4

1 に答える 1

1

PDF 形式で文書を作成するためのサポートが組み込まれていますが、読み取りはサポートされていません。

PDF ドキュメントを読むには、まずサードパーティのライブラリを使用するか、外部ツールを使用して PDF を別の形式 (テキストや html など) に変換する必要があります。

PDF文書の取り扱いの概要については、こちらをご覧ください。

于 2012-09-04T16:33:40.747 に答える