PyQt und Drucken von raw-PDF -

Vorausgesetzt, ich habe eine test.pdf Datei im aktuellen Verzeichnis, ich möchte senden Sie diese raw-Datei, um den Drucker mit dem gui PyQt Drucker.

Folgende Python ist3 code druckt die PDF-source code! Ich will nicht Qt zu bauen, die PDF-Datei für mich, sondern nur senden Sie es an den Drucker mit einem gui-Dialogfeld.

Dieser sollte auf jedem OS, (keine lp Befehl) ...vorausgesetzt, dass der Drucker versteht PDF nativ.

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_())
InformationsquelleAutor user1004847 | 2012-09-04
Schreibe einen Kommentar