Html mit Kopf und Fußzeile Drucken
Verfasst: 9. Dezember 2008 09:57
Hallo,
ich arbeite zurzeit daran Html zu drucken.
Das alleine wäre nun dank QWebView::print ( QPrinter * printer ) nicht das Problem. Jedoch ist es zwingend notwendig, dass ich auf jeder Seite eine Kopfzeile mit Logo, Seitenzahl etc. habe. Zudem muss sich auf der ersten Seite eine zusätzliche Kopfzeile befinden und auf der letzen Seite eine Fußzeile.
Zurzeit löse ich dies dadurch, dass ich ein QPrinter Object erstelle und mittles QPainter darauf zeichne. Ich Zeichne nun also die 2 Kopfzeilen auf der ersten Seite. Anschließend berechne ich die restlichen Seiten mittels QWebFrame::contentSize() und drucke diese mit QWebFrame::render ( QPainter * painter, const QRegion & clip ) auf meinen QPainter.
Dabei habe ich jedoch das Problem, dass Texte oder andere Objecte wie Tabellen gegebenenfalls horizontal getrennt werden können.
Nun ist meine Frage, ob und wie es da ggf. eine Lösung für gibt. Die "normale" Druckfunkton QWebView::print ( QPrinter * printer ) teilt die Seiten ja auch korrekt ein.
Hoffe ich habe mich möglichs verständlich ausgedrückt.
mfg. Marco
ich arbeite zurzeit daran Html zu drucken.
Das alleine wäre nun dank QWebView::print ( QPrinter * printer ) nicht das Problem. Jedoch ist es zwingend notwendig, dass ich auf jeder Seite eine Kopfzeile mit Logo, Seitenzahl etc. habe. Zudem muss sich auf der ersten Seite eine zusätzliche Kopfzeile befinden und auf der letzen Seite eine Fußzeile.
Zurzeit löse ich dies dadurch, dass ich ein QPrinter Object erstelle und mittles QPainter darauf zeichne. Ich Zeichne nun also die 2 Kopfzeilen auf der ersten Seite. Anschließend berechne ich die restlichen Seiten mittels QWebFrame::contentSize() und drucke diese mit QWebFrame::render ( QPainter * painter, const QRegion & clip ) auf meinen QPainter.
Dabei habe ich jedoch das Problem, dass Texte oder andere Objecte wie Tabellen gegebenenfalls horizontal getrennt werden können.
Nun ist meine Frage, ob und wie es da ggf. eine Lösung für gibt. Die "normale" Druckfunkton QWebView::print ( QPrinter * printer ) teilt die Seiten ja auch korrekt ein.
Hoffe ich habe mich möglichs verständlich ausgedrückt.
mfg. Marco