Seite 3 von 3
Verfasst: Dienstag 14. April 2009, 08:03
von burli
jerch hat geschrieben:Vllt. hast Du ja Lust, das ausgiebiger zu testen (mit Werteübergabe etc.) und das Fehlverhalten von Qt-C++ vs. PyQt zu dokumentieren.
Wirklich Zeit, das zu testen, hab ich leider nicht. Aber ich kann die beiden Programme mal aufräumen und posten.
Aber für Jaunty kommt das wohl so oder so zu spät. Selbst wenn das Problem behoben wird landet es wohl nicht mehr in den Paketen
Verfasst: Freitag 24. April 2009, 11:41
von klaus66
[quote="burli"]Ich grabe das Thema nochmal aus, weil ich gerade selbst am Drucken mit PyQt sitze. Folgendes Programm habe ich geschrieben und tut soweit (sorry für import *. Ich war zu faul )
Hi, burli,
meine Rippen sind soweit abgeheilt, dass ich wieder am PC hocken kann.
Aus gegebenem Anlass muss ich mich leider auch nochmal mit dem Druck befassen. Deine Druckfunktion hab ich mal getestet, kann aber keinerlei Einfluß der Margin-Einstellungen im Programm auf den Ausdruck feststellen. Einzig und allein die Einstellungen im Druckdialog werden tatsächlich verwendet! Das ist natürlich Blödsinn! Ich kann dem Benutzer nicht zumuten, dass er bei jedem Ausdruck im Dialog die Margins einstellen muß.
Es muss doch eine Möglichkeit geben, die Ränder auf einen anderen als den default-Wert einzustellen. Trotz aller Rumsucherei und Probiererei bin ich noch nicht fündig geworden. Für die Testphase werde ich deshalb den Dialog drinlassen.
Wenn irgendwer noch eine Idee hat, wie mann das Problem lösen kann, bitte ganz schnell melden!
Verfasst: Dienstag 5. Mai 2009, 07:26
von klaus66
So klappt die Drucker Funktion, wie ich es haben wollte!
Code: Alles auswählen
def drucken(self, text, copy):
printer=QPrinter()
printer.setFullPage(False)
printer.setResolution(300)
printer.setOrientation(QPrinter.Portrait)
size=QSizeF(148.0, 210.0)
printer.setPaperSize(size, QPrinter.Millimeter)
printer.setPageMargins(5.0, 5.0, 5.0, 5.0, QPrinter.Millimeter)
printer.setNumCopies(copy)
QTextDocument(text).print_(printer)
Er druckt das DINA5 Dokument mit 5 mm Rand ringsum. Genau so wollte ich es haben, auch ohne Druckdialog!
Vielen Dank an alle, die sich an dieser Diskussion beteiligt und mir damit geholfen haben.