Hallo allerseits,
ich würde gern PDFs aus einem Lazreport heraus erstellen. Diese sollten Unicodecharacter und vom User selbst gewählte Fonts enthalten können. Mit TfrTNPDFExportFilter (PowerPDF) funktionieren beide Ansprüche nicht.
Ich habe im englischen Forum gelesen, dass das wohl mit dem Cairo PDF exporter funktionieren tät http://forum.lazarus.freepascal.org/ind ... ic=26174.0 dazu müsste ich aber GTK für Windows installieren, was ich nicht unbedingt machen will.
Installiert habe ich den PDFCreator (PDF-Drucker). Mit diesem kann ich PDFs aus einem Lazreport erstellen, die UTF8-Chars und verschiedene Fonts enthalten. Allerdings müsste man den PDFCreator immer mit installieren und bei dem PDF-Export das Speicherziel immer händisch festlegen. Mit ersterem könnte ich noch leben mit der händischen Speicherort/-name nicht (es werden viele PDFs erstellt, die automatisch EMails beigefügt und automatisch versendet werden sollen). Die Möglichkeit der Fernsteuerung des PDFCreators habe ich bis dato noch nicht recherchiert, sondern wollte erstmal hier nach weiteren Alternativen fragen.
Wie würdet ihr das lösen?
[gelöst] Lazreport zu PDF
[gelöst] Lazreport zu PDF
Zuletzt geändert von Michl am So 20. Dez 2015, 17:49, insgesamt 1-mal geändert.
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;
Re: Lazreport zu PDF
Bauen diese pdf-Drucker nicht alle auf ghostscript auf? Diesen kann man per Kommandozeile bzw. per Script steuern.
Re: Lazreport zu PDF
Der PDFCreator hat Ghostscript mMn nicht mit installiert, zumindest ist mir das nicht bewusst (andere PDF-Drucker, die ich mal getestet hatte, hatten das schon).
Aber generell ist das schon mal eine Idee, werde ich mich mal reinlesen.
Danke dafür!
Aber generell ist das schon mal eine Idee, werde ich mich mal reinlesen.
Danke dafür!
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;
Re: Lazreport zu PDF
Nach einigen Tests habe ich mich doch entschlossen, mittels Cairo Export die PDFs zu erstellen. Damit genügt es, wenn ich die DLLs weitergebe. Bei Ghostscript müsste ich das auch, habe dort aber keinen fertigen Exportfilter.
Das Ganze geht recht einfach umzusetzen (Windows):
- von irgendwo das GTK+ Paket herunterladen gtk+-bundle_2.24.10-20120208_win32.zip
- aus dem Zip die DLLs Lazarus und dem Projekt zur Verfügung stellen:- das Package lrCairoExport in Lazarus installieren
- das PDF erstellen:
Das Ganze geht recht einfach umzusetzen (Windows):
- von irgendwo das GTK+ Paket herunterladen gtk+-bundle_2.24.10-20120208_win32.zip
- aus dem Zip die DLLs Lazarus und dem Projekt zur Verfügung stellen:
Code: Alles auswählen
freetype6.dll
intl.dll
libcairo-2.dll
libexpat-1.dll
libfontconfig-1.dll
libglib-2.0-0.dll
libgmodule-2.0-0.dll
libgobject-2.0-0.dll
libgthread-2.0-0.dll
libpango-1.0-0.dll
libpangocairo-1.0-0.dll
libpangoft2-1.0-0.dll
libpangowin32-1.0-0.dll
libpng14-14.dll
- das PDF erstellen:
Code: Alles auswählen
if frReport1.PrepareReport then
frReport1.ExportTo(TlrCairoExportFilter, 'test.pdf');
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;