Einzelnen Beitrag anzeigen

Benutzerbild von gubbe
gubbe

Registriert seit: 8. Okt 2005
Ort: Schleswig-Holstein
127 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: PDF-Komponente(n) gesucht

  Alt 24. Aug 2019, 13:37
Hallo blackFirefly,

ich habe schon mit vielen PDF-Komponenten für Delphi gearbeitet. Es gibt ja inzwischen einige, z.B.

- QuickPDF
Wurde von Foxit gekauft und wird seitdem kaum noch weiterentwickelt. Der Vorteil ist, dass es überwiegend in Delphi geschrieben ist und man es direkt einbinden kann. Für die Anzeige wird inzwischen PDFium verwendet, was auch in Chrome für die PDF-Anzeige verantwortlich ist. Einfache API, aber kaum Support bei Problemen. Man wird auf die nächste Version in einem halben Jahr verwiesen, in der ein Bug dann evtl. gefixt ist (oder auch nicht).

- DynaPDF
Lässt sich als DLL in Delphi einbinden und hat liefert auch eine Dephi-Unit mit.
Mein Favorit, da es für viele verschiedene Betriebsysteme verfügbar ist und der deutsche Entwickler immer recht schnell auf Anfragen reagiert.
Man kann sowohl PDFs erzeugen als auch Anzeigen und es gibt auch einige Delphi-Beispiele. Ist aber nicht ganz so einfach zu verwenden. Man muss sich intensiver damit beschäftigen, um es würdigen zu wissen.

- PDFium
Open-Source-Variante von Foxit, wie es auch in Chrome verwendet wird. Es gibt verschiedene Einbindungen in Delphi u.a. von Andreas Hausladen, Winsoft und ggf. weitere. Suche einfach nach PDFium und Delphi.
Ob die Lizenz passt, musst Du klären. Vorteil ist, dass es nicht extra gekauft werden muss (ausser ggf. der Einbindung in Delphi) und keine hohen Folgekosten für Maintenance anfallen wie z.B. bei QuickPDF. Dafür hat man dann auch keinen direkten Support.

Andere wurden hier ja auch schon genannt wie Gnostice.

Aber die Frage ist, warum willst Du Dir das überhaupt antun? Wenn die Anzeige jetzt sowieso schon mit FastReport erzeugt wird, warum kann sie dann nicht jederzeit wieder damit aus den gespeicherten Daten generiert werden? PDF ist doch hier letztlich nur ein Druck-Format oder ein Export-Format aus Deinem Programm. Einfacher als mit FastReport wirst Du das PDF mit anderen Mitteln auch nicht erzeugen können. Das exportierte PDF anzuzeigen, sollte nicht mehr im Verantwortungsbereich Deines Programm liegen. Das macht es nur unnötig kompliziert. Meine Empfehlung wäre, eine einfache Lösung umzusetzen und überhaupt nicht mit PDF-Bibliotheken zu hantieren, wenn es nicht unbedingt notwendig ist (und das erkenne ich hier nicht).

Auch beim Druck würde ich, wie hier schon empfohlen wurden, einfach einen externen PDF-Reader aufrufen. Vielleicht kann man sogar noch einen Schritt weiter gehen, und die Datei einfach im externen Reader öffnen, ohne direkt zu drucken und dies als "Vorschau" zu deklarieren. Du sparst Dir eine Menge Ärger, wenn Du nicht alles selbst umsetzt, was andere Programme besser können.

Also: Keep it simple!
  Mit Zitat antworten Zitat