Hallo!
Ich möchte eine Tablelle drucken lassen, bei der ich eine feste Spaltenzahl habe.
Die Zeilenzahl variiert. Nun soll aber die Tabelle in der Höhe so gestaucht werden, dass sie auf genau eine Seite passt.
Wie stelle ich so etwas an?
Soll ich das als Grafik drucken lassen oder soll ich html nehmen?
Danke,
QMaddin
QTableWidget mit fester Spaltenzahl drucken
Ich habe bis jetzt schon mal meine Tabelle aufs Papier gebracht.
Mit html: Davon bin ich schnell wieder abgewichen, weil Qt nicht mal billigstes CSS unterstützt. So hätten meine Tabellenränder nicht nur 1px Stärke, sondern wären eben diese häßlichen HTML-Standard-Rahmen.
Mit einer QPixmap und grabWidget(): Das Problem beim Druck ist, dass die Auflösung (vermutlich) bei den 72 dpi des Monitors bleibt und nicht die nötigen 300 dpi des Druckers hat. Um aber auf die richtige Größe zu kommen wird das Bild automatisch vergrößert und interpoliert, wodurch mein alter Laserdrucker ein sehr häßliches Produkt erzeugt.
Der mit ausgedruckte Text "Titel" wird aber einwandfrei dargestellt.
Auch wird das gegrabbte Bild von mir zu keiner Zeit vergrößert/verkleinert oder sonst irgendwie verformt.
Weiß jemand Rat? Muss ich wirklich die komplette Tabelle mit drawRect()/drawText() selber zeichnen?
Danke schonmal,
Martin
Mit html: Davon bin ich schnell wieder abgewichen, weil Qt nicht mal billigstes CSS unterstützt. So hätten meine Tabellenränder nicht nur 1px Stärke, sondern wären eben diese häßlichen HTML-Standard-Rahmen.
Mit einer QPixmap und grabWidget(): Das Problem beim Druck ist, dass die Auflösung (vermutlich) bei den 72 dpi des Monitors bleibt und nicht die nötigen 300 dpi des Druckers hat. Um aber auf die richtige Größe zu kommen wird das Bild automatisch vergrößert und interpoliert, wodurch mein alter Laserdrucker ein sehr häßliches Produkt erzeugt.
Code: Alles auswählen
QPixmap pixmap(QPixmap::grabWidget(table,QRect(2,2,totalWidth,totalHeight)));
painter.drawText(marginLeft,marginTop,"Titel");
painter.drawPixmap(tableRect.x(),tableRect.y(),pixmap);Auch wird das gegrabbte Bild von mir zu keiner Zeit vergrößert/verkleinert oder sonst irgendwie verformt.
Weiß jemand Rat? Muss ich wirklich die komplette Tabelle mit drawRect()/drawText() selber zeichnen?
Danke schonmal,
Martin