THtmlViewer - Drucken mehrerer HTML Dokumente

Rund um die LCL und andere Komponenten
Antworten
MmVisual
Beiträge: 1470
Registriert: Fr 10. Okt 2008, 23:54
OS, Lazarus, FPC: Winuxarm (L 3.0 FPC 3.2)
CPU-Target: 32/64Bit

THtmlViewer - Drucken mehrerer HTML Dokumente

Beitrag von MmVisual »

Hallo,

Ich nutze die Komponente THtmlViewer für die Ansicht der Hilfe. Funktioniert soweit gut. (https://github.com/BerndGabriel/HtmlViewer)
Auch das Drucken einzelner Seiten (als PDF) geht ebenfalls gut.
In der alten Version "HtmlViewer-11.9" hat das drucken mehrerer HTML Dokumente in eine PDF Datei ebenfalls sehr gut funktioniert. Damit könnte ich die komplette Hilfe in ein PDF drucken.
Der Aufruf dazu:

Code: Alles auswählen

PrintDlg.Execute; // << Select a PDF printer
THtmlViewer.PrintScale := 2.2;
THtmlViewer.OpenPrint; // << start multible printing
For i := 0 To FileList.Count - 1 Do // loop for all HTML documents for printing
Begin
  THtmlViewer.LoadFromStream(<Stream>);
  THtmlViewer.Print(); // << add a new page and print into this new page(s)
End;
THtmlViewer.ClosePrint; // << start the printing
Nun wollte ich die neuere Komponente "HtmlViewer-11.10" einsetzen, damit funktioniert alles, bis auf die Funktion des Druckens mehrerer HTML Dokumente.
Ich habe da mal danach geschaut was es sein könnte und gesehen dass die Datei "vwPrint.pas" in diese 2 Dateien "vwPrint.pas" / "HtmlPrinter.pas" aufgeteilt wurde. Jedoch konnte ich nicht finden warum es nicht klappen mag.
Ich vermute mal dass beim multiblen Druck entweder die Seite nicht korrekt gestartet wird oder das Ende des Druckes nicht geht.
Also man startet den Druck, die FOR Schleife läuft durch und das ganze beendet sich ohne Fehlermeldung. Sieht soweit gut aus, nur dass am Ende das dann so aussieht als wäre der Druck abgebrochen worden, es passiert einfach nichts mehr. Beim Einzel Seite Druck erscheint hinterher der PDF-Creator Dialog um die Datei zu speichern.

Ich habe beim GIT Projekt auch mal eine Anfrage gestellt: https://github.com/BerndGabriel/HtmlViewer/issues/342
Ich schreib noch hier, da hier sehr viele gute Leute sind ;-)

Vielen Dank für die Hilfe.

VG Markus.
EleLa - Elektronik Lagerverwaltung - www.elela.de

Antworten