Wie man Informationen am besten auf einem Server in einem „Formular“ zusammenführt, wobei als endgültige Ausgabe ein PDF generiert wird [geschlossen]

StackOverflow https://stackoverflow.com/questions/54808

Frage

Hintergrund:

Ich habe eine VB6-Anwendung, die ich „geerbt“ habe und die mithilfe der nicht unterstützten Acrobat Reader OCX-Integration eine PDF-Datei generiert, die der Benutzer überprüfen kann.Das Programm generiert eine FDF-Datei mit den Daten und rendert dann das zusammengeführte Ergebnis, wenn das FDF mit einer PDF-Datei zusammengeführt wird.Es funktioniert nur mit Acrobat Reader 4 korrekt :-(.Durch die Installation einer neueren Version von Acrobat Reader wird diese Anwendung beschädigt, was die Benutzer sehr unzufrieden macht.

Ich möchte diese App so umgestalten, dass sie die zusammenzuführenden Daten an einen PDF-Ausgabegenerierungsserver sendet.Dieser Server führt die ihm übergebenen Daten auf dem Formular zusammen, generiert davon ein PDF-Bild und speichert es, sodass jeder Benutzer, der das Endergebnis sehen möchte, dann einfach das PDF abrufen kann (es wird nur einmal generiert).Bei einer Änderung der zugrunde liegenden Daten wird das PDF bei der nächsten Anforderung gelöscht und neu generiert.Das Client-Programm kann dann über eine beliebige Version des Acrobat Readers verfügen, da dieser (wie beabsichtigt) ausschließlich zur Anzeige von PDF-Dateien verwendet wird.Der Server wird höchstwahrscheinlich in .NET (C#) mit Visual Studio 2005 geschrieben, wahrscheinlich als Webdienst ...

Frage:

Wie würden mir andere die Vorgehensweise empfehlen?Sollte ich dazu Adobes Acrobat 9 auf dem Server verwenden, die Daten in das FDF- oder Adobes XML-Format übertragen und Acrobat die Zusammenführung überlassen?Gibt es große Konkurrenten im Bereich „Daten in ein Formular zusammenführen und als PDF ausgeben“?Wie machen andere das?Es muss API-basiert sein, natürlich keine GUI auf dem Server ...

Während einige Ausgaben über FDF/PDF generiert werden, sendet ein anderer Teil der Anwendung tatsächlich Zeilen, Grafiken und Text Seite für Seite an den Drucker (oder ein Formular für Vorschauzwecke) und gibt dabei die richtigen X/Y-Koordinaten, Schriftarten usw. an. Größe usw.für jedes, wissen, wann es am Ende einer Seite ist usw.Dieser Code befindet sich derzeit in dem Programm, das dies anzeigt, damit der Benutzer es überprüfen kann, und auch in dem Programm, das das endgültige Formular auf dem Drucker ausdruckt.Aus Gründen der Konsistenz zwischen Prüfer und Drucker möchte ich diese Ausgabegenerierungslogik auch auf einen Server verschieben, indem ich entweder ein gutes API-Tool zur PDF-Generierung verwende oder den Code unverändert verwende und eine PDF-Datei mit einem PDF-Drucker erzeuge ...und Speichern dieser PDF-Datei zur Anzeige durch die Kunden.

Das Googeln von „Formularsoftware“ oder „Formularsoftware ausfüllen“ oder ähnlichen Suchanfragen liefert sooooooooo viel nicht verwandtes Material, hauptsächlich im Zusammenhang mit der Benutzeroberfläche für Benutzer zum Ausfüllen von Formularen. Ich weiß einfach nicht, wie ich meine Suche richtig eingrenzen kann.Diese Seite scheint der perfekte Ort zu sein, um eine solche Frage zu stellen, da andere Programmierer wahrscheinlich auch ähnliche Ausgaben generieren müssen und einige großartige Tools ausprobiert haben.

BEARBEITEN:

Ich habe PDF-Tag und PDF-Generierung hinzugefügt.Auch mein aktueller Kunde besteht auf der PDF-Ausgabe, aber ich schätze die Alternativvorschläge.

War es hilfreich?

Lösung

kann nicht mit VB6-Lösung helfen, mit .net oder Java-Lösung auf dem Server helfen kann.
Holen Sie iText oder iTextSharp von http://www.lowagie.com/iText/ .
Es hat eine PdfStamper Klasse, die eine PDF und FDF FDFReader / FDFWriter Klassen zusammenführen kann FDF-Dateien zu generieren, die Feldnamen aus PDF-Dateien erhalten, etc ...

Andere Tipps

Nehmen Sie meinen Rat. Ditch PDF für XPS. Ich arbeite an zwei Apps, sowohl Server-basierte. One zeigt die bildbasierte Dokumente als PDF-Dateien in einem Browser. Die zweite benutzt FixedPage Vorlagen XPS-Dokumente gebunden Datenquellen zu konstruieren.

Meine Schlussfolgerung auf beiden Projekten nach der Arbeit ist, dass PDF-Dateien saugen; XPS-Dokumente weniger. Sie müssen bares Geld für eine anständige PDF-Bibliothek zahlen, während XPS mit dem Rahmen kommt. PDF-Dokument Generation ist ein Speicher Schwein, hat viele Schlaglöcher und ist nicht sehr freundlich Server. XPS-Dokumente haben einen deutlich geringeren Platzbedarf und weniger Chancen, sich in den Fuß zu schießen.

Ich habe großen Erfolg mit Microsoft Word hatte. Das Formular wird in Word entworfen und mit XML-Daten zusammengesetzt. Das Dokument wird durch einen PDF-Konverter läuft (Neevia in diesem Fall, aber es gibt bessere), um die PDF zu erzeugen.

All dies ist in C # getan.

Die gleiche Boot. Wir machen derzeit pdfs auf diese Weise: VB6 app einen Datensatz in SQL-Tropfen (mit Dateinamen, Erstellungsdatum, Benutzer und endgültige Ziel) und die xls (oder doc) wird in einem Server-Verzeichnis (Aktie) bewegt und der Server ein vb.net Dienst, der einen Penguin Computing Überwachung dieses Verzeichnis hat. Die Datei zeigt auf, der Dienst startet Excel (Wort), um die Datei über Adobe PDF, sieht auf SQL, um herauszufinden, was mit dem PDF zu tun, wenn es gemacht wird, und protokolliert die Zielzeit.

Dies war das billig lösungs- es nur etwa einen Tag nahm den Code und einen anderen Tag zu tun, beide Enden zu debuggen und die Build ausrollen.

Dies ist nicht der richtige Weg, es zu tun. Adobe stürzt zufällig mal beim Versuch, die PDF-Dateien zu machen. es wird überhaupt, zwei Wochen lang ohne Probleme läuft und dann (wie heute) wird es alle 5 Minuten zum Absturz bringen. oder jede andere Stunde. oder bei 11.07, 02.43, 03.05 und 06.11 Uhr.

Wir werden die Sachen aus Excel und Word konvertieren und die Daten direkt in PDF-Dateien mit PDFTron in der nächsten Revision fallen. Ja, kostet PDFTron Geld, (wir kauften die 1-kilobuck-per-Prozessor-Lizenz), aber es wird die Arbeit, und schön machen. XPS ist schön , aber ich, wie Sie, haben PDFs zur Verfügung zu stellen. Es ist die Art und Weise der Dinge.

Überprüfen Sie heraus PDFTron (google it) und sehen, ob es das tut, was Sie wollen. Dann hast du nur, um herauszufinden, welche Lizenz Sie benötigen und wie Sie würde dafür bezahlen. Wenn jemand mit etwas kommt, besser, hoffen, sie werden sie stimmen an die Spitze der Liste !!!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top