![]() |
PDF-Komponente(n) gesucht
Hallo zusammen,
übers Web und durch andere Foreneinträge findet man ja schon recht viel zum Thema PDF. Aber leider feht mir teilweise trotzdem noch ein bisschen der Überblick. Ich möchte in einem FireMonkey-Programm PDF-Dateien erzeugen. Diese sollen mehrere Tabellen und andere Stilelemente enthalten, die nicht direkt aus einer Datenbank generiert werden. Werden die PDF-Dateien erzeugt sollen sie entweder nur gespeichert oder gespeichert und gleichzeitig ausgedruckt werden. Es soll möglich sein das ganze dynamisch zu machen. Das bedeutet wenn ich z.B. auf einer Seite 2 Spalten mit Tabellen habe, dann sollen die Elemente darunter automatisch verschoben werden wenn die Elemente darüber zu groß sind und auch automatisch neue Seiten angefangen werden. Die erstellten PDFs sollen später auch eingebettet in dem Programm angezeigt werden. Wichtig hierbei ist, dass ich etwas habe, was ich in ein Formular einbetten kann und kein neues Fenster öffnet. Es soll alles in einem Fenster bleiben. Den ersten Teil habe ich im Moment mit FastReport umgesetzt, aber ehrlich gesagt bin ich mit dem Programm für meinen Anwendungsfall überhaupt nicht zufrieden. Außerdem schaffe ich es so nur eine PDF direkt nachdem der Report erzeugt wurde ausdrucken zu lassen. Wenn ich schon die PDF-Datei habe, dann weiß ich bisher noch nicht wie ich die dann drucken kann. Das soll auch so passieren, dass ich z.B. auf einen Knopf "Drucken" in der Anwendung drücke und es dann die PDF auf dem Standarddrucker ausdruckt. Jetzt stellt sich die Frage muss ich zwei Komponenten/Programme kaufen (einmal fürs Erstellen und einmal fürs Anzeigen und drucken) oder gibt es auch etwas, was alles kann? Was könnt ihr mir grundsätzlich für den Anwendungsfall empfehlen? |
AW: PDF-Komponente(n) gesucht
Hallo,
ich würde mir Quickpdf ansehen, ob es das auch für FMX gibt. Du schreibst leider nicht, ob es ein reines Windows-Programm ist. Zitat:
|
AW: PDF-Komponente(n) gesucht
Hallo Heiko,
entschuldige. Ja es soll ein reines Windows-Programm sein ^^ Quickpdf schaue ich mir mal an. Hast du das schon genutzt? Wie sind deine Erfahrungen damit? Und danke für den Shell-Befehl. Wenn das so einfach geht wäre es ja super :D |
AW: PDF-Komponente(n) gesucht
Wenn Du zu den ForenTagen kommst könne ggf.
![]() |
AW: PDF-Komponente(n) gesucht
Hallo,
ja wir benutzen das auf der Arbeit. Es gibt auch eine Demo davon. PDF/A ist glaube das einzige was nicht geht und die Anzeige der Signatur einer signierten PDF. |
AW: PDF-Komponente(n) gesucht
... wir benutzen auch seit mehreren Jahren Quickpdf. Hauptsächlich um Formulare auszufüllen. Klappt sehr gut, ist sehr intuitiv.
|
AW: PDF-Komponente(n) gesucht
Hallo!
Wenn es nur für die VCL 32/64 sein muss, dann schau mal hier: Wenn du Profi Qualität benötigst. ![]() Das PDF-XChange Editor SDK hat allerdings seinen Preis. Einen PDFViewer bekommst du auch von DevExpress. ![]() Dazu must du die VCL Subscription kaufen. Bis bald... Thomas |
AW: PDF-Komponente(n) gesucht
Tja, der OP hatte allerdings was von Firemonkey geschrieben...
Zum oben erwähnten Shell Befehl: der benutzt halt die Anwendung, die sich für's Drucken von PDFs registriert hat dafür. Dürfte wohl meist der Adobe Reader seib. Nur ob das dann direkt ohne Drucker Dialog druckt musst du halt mal ausprobieren und mittels der weiteren parameter von ShellExecute kann man i.d.R. steuern wie die aufgerufene Anwendung angezeigt wird (minimiert...) |
AW: PDF-Komponente(n) gesucht
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! |
AW: PDF-Komponente(n) gesucht
Hallo zusammen,
vielen lieben Dank für eure Antworten und auch eure Meinungen zu den verschiedenen Komponenten! Mein Problem bei FastReport ist, dass es nicht so funktioniert wie ich das gerne hätte. Mein Ziel ist eine PDF-Datei zu erstellen auf der in 2 Spalten mehrere kleine Tabellen angezeigt werden. Dabei sind die Einträge der Tabellen nicht einfach Einträge in der Datenbank. Die Anleitung von FastReport beschäftigt sich irgendwie fast immer nur damit, dass man Daten aus der DB holt und diese dann alle in der gleichen Form anzeigt. Das ist bei mir leider nicht so. Laut der Anleitung von FastReport soll es angeblich ein Tabellen-Element geben, welches man beim Design auf dem Report plazieren kann. Aber ich weiß nicht wo das zu finden sein soll. Ist es einfach in der Firemonkey-Version nicht da? Deswegen habe ich das was ich haben wollte jetzt ganz hässlich und umständlich mit mehreren Textelementen gelöst. Doof dabei ist nur, dass wenn ich erlaube, dass es die Textbausteine automatisch verschieben darf wenn eine Überlappung da ist, es die Elemente irgendwie ganz seltsam gegeneinander verschiebt. Aktuell habe ich es so gemacht, dass alles immer genau an dem Platz angezeigt werden soll an dem es ist, aber ich muss die Tabellen noch so ändern, dass der Inhalt dynamisch sein kann und wenn das mit der Verschiebung nicht hinhaut, dann ist das doof /: Ein weiterer Punkt gegen FastReport ist, dass die Darstellung von gedrehtem Text nicht so ganz funktioniert (funktioniert in Delphi selbst auch nicht so richtig). Ich habe links einen Kasten (Stylingobjekt) und in diesem soll vertikal ein Schriftzug angezeigt werden. Also habe ich einen Kasten eingefügt und darauf dann eine Box mit dem Text gesetzt. Das komische ist jedoch, dass dann der Text in der Ausgabe abgeschnitten wird. Mache ich beim Design auch noch die Breite von dem Kasten mit dem Text ganz breit, dann funktioniert es. Allerdings habe ich so immer dieses Element, was mir beim Design über den anderen Elementen schwebt und das nervt irgendwie. Allgemein hatte ich auch Probleme bei der Installation der Testversion. Der Support fragte dann nur welche Version ich jeweils nutzen würde. Da habe ich geantwortet, dass es die neueste Version von FastReport ist und die vorletzte Version von Delphi. Delphi wollte ich schon updaten, aber da die Server zu der Zeit gerade down waren konnte ich das nicht machen. Also hatte ich es nicht hinbekommen FastReport zu installieren. Das hatte ich dem Support auch gesagt, aber da kam trotzdem nur die Antwort, dass ich doch Delphi updaten soll. Was wäre denn gewesen, wenn ich nicht mehr die Updatesubscription für Delphi gehabt hätte und Delphi nicht hätte updaten können? Dann hätte ich noch dümmer dagestanden -.- Das sind so die Gründe warum mir FastReport nicht so wirklich sympatisch ist. Mal schauen wie die anderen Komponenten sich schlagen ^^ Gerade probiere ich mit QuickPDF herum. Die Anzeige der PDF und das Drucken funktionieren schonmal super einfach. Für die Anzeige habe ich einfach ne Scrollbox genommen und lade die PDF als Bild rein. Das ist zu 100% das was ich wollte, von der Seite her bin ich schonmal sehr zufrieden damit ^^ Ich brauche wirklich nur, dass man die PDF darstellt. Keine sonstigen Buttons oder Funktionen die ein PDF-Viewer hat ^^ Die Anforderung an das Programm ist eben, dass man keine anderen Programme öffnet mit denen man aus dem Programm raus geht. Deswegen ist die Version mit dem externen Viewer nicht so schön. |
AW: PDF-Komponente(n) gesucht
Zitat:
|
AW: PDF-Komponente(n) gesucht
Fastreport war sonst immer bei Delphi dabei, zumindest in einer einfacheren Ausführung (Stichwort "Embarcadero Edition"). Hast Du versucht, es über GetIT zu installieren?
Einen eigenes Tabellenelement in FastReport ist mir auch nicht bekannt, aber es ist auch nicht notwendig. Wenn Deine Daten nicht als Datenbank vorliegen, kannst Du immer noch das TrfxUserdataset verwenden und dort die Felder definieren. Bei den Ereignissen gibt es OnGetValue, das dich dann nach den einzelnen Werten fragt. Mit den weiteren Ereignissen wird der Datensatzzeiger bewegt (OnFirst, OnNext etc). Dazu wirst Du bestimmt auch Beispiele finden. Wenn Du das dem Report zuordnest, hast Du eine "Datenbank" und kannst ganz normal mit FastReport arbeiten. Gedrehter Text sollte problemlos funktionieren. Welche Elemente hast Du hier genau verwendet? Beim Textelement kannst Du z.B. "Clipped" auf False setzen, damit nichts abgeschnitten wird. Ich habe nur gute Erfahrungen mit Fastreport gemacht. Man muss vielleicht hier und da etwas um die Ecke denken, aber die Einarbeitung lohnt sich. Bezüglich PDF-Anzeige verstehe ich immer noch nicht, warum Du die Ausgangsdaten nicht jederzeit wieder abrufen und daraus einen Report erstellen kannst? Den Report könntest Du direkt aus dem Programm drucken und bei Bedarf ein PDF exportieren. |
AW: PDF-Komponente(n) gesucht
Zitat:
Da ist es dann schon eher ohne Probleme möglich Dateien bei Bedarf einfach fix nochmal aus der DB zu erstellen ^^ Zitat:
Zitat:
Zitat:
Zitat:
|
AW: PDF-Komponente(n) gesucht
Zitat:
![]() Zitat:
|
AW: PDF-Komponente(n) gesucht
Noch ein Nachtrag zum letzten Beitrag:
Ich habe mal in einem alten Projekt nachgeschaut, wo ich die Embarcadero-Edition von Fastreports verwendet habe. Auch da gibt es ein "TfrxPDFExport", das man nur als Komponente in das Form einfügen muss und dann erscheint im Preview ein PDF-Button für den Export. Dafür allein brauchst Du also keine höhere Edition. Un die Bänder für Tabellenheader und Footer heissen einfach "Kopf" und "Fuß". |
AW: PDF-Komponente(n) gesucht
Zitat:
Ich hatte einen Forenbeitrag in dem Fastreport-Forum gesehen in dem stand dass der PDF-Export nicht in der Embarcadero-Version enthalten wäre. ![]() Zitat:
|
AW: PDF-Komponente(n) gesucht
Ich glaube ich gebe es auf mit FastReport, das bringt mich zum Verzweifeln -.-
Gerade versuche ich erst einmal das Grunddesign mit den Bändern neu aufzubauen, dafür brauche ich einen Titel, der auf der 1. Seite ganz oben stehen soll und eine Box mit Text enthält. Darunter soll dann der Header sein, der auf allen Seiten angezeigt werden soll und auch eine Box mit Text enthält. Der Header soll ab Seite 2 ganz oben sein. Zuletzt brauche ich links auch noch einen Kasten mit vertikalem Text. Dieser soll auch auf jeder Seite sein und immer die restliche Höhe der Seite nutzen (mit ein bisschen Abstand zu den anderen beiden Boxen). Ich hätte gedacht, dass hierfür ein vertikaler Header richtig wäre, allerdings wird mir die Box die ich darin haben will im Reportbaum nicht innerhalb dem vertikalen Band angezeigt, sondern auf gleicher Ebene. Wenn ich einfach mal schauen will was dabei rauskommt bekomme ich nicht mal einen Report, weil es mir den Fehler "Nicht verbundene Kopf/Fußzeile Header1" anzeigt. Header1 ist der vertikale Header. Leider bringt mich Google bei der Sache nicht wirklich weiter :/ |
AW: PDF-Komponente(n) gesucht
Zitat:
Hier habe ich eine Vergleichstabelle gefunden: ![]() Demnach gäbe es in der FMX-Version unter Windows gar keinen PDF-Export, auch nicht in der Kaufversion. Hast Du den PDF-Export noch gar nicht getestet? Aber wenn es sowieso ein Windows-Programm werden soll, warum erstellt Du es dann mit Firemonkey? |
AW: PDF-Komponente(n) gesucht
Zitat:
Das ist Blödsinn ich habe Fastreport FMX und der hat PDF Export und auch einige andere Sachen die er laut der Liste nicht haben sollte. Ich gehe davon aus das die Liste total Veraltet ist |
AW: PDF-Komponente(n) gesucht
Zitat:
|
AW: PDF-Komponente(n) gesucht
Zitat:
Zitat:
Hatte das schon zur Genüge untersucht ^^ |
AW: PDF-Komponente(n) gesucht
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz