Java PDF-Bearbeitung und -Rendering

8

Ich hoffe, dass diese Frage zu einem umfassenden Leitfaden für PDF-Manipulation und -Rendering in Java wird. Ich habe eine ziemlich umfassende Implementierung, indem ich mehrere Open-Source-Bibliotheken zusammenfüge, die ich gerne verbessern würde.

Hintergrund

Meine Anforderungen und aktuelle Implementierung:

  1. Überprüfung vorhandener PDF-Dokumente auf bestimmte Bedingungen (PDF-Version, Passwortschutz, Schriftarteneinbettung, Querverweistabellen usw.) - Nicht implementiert.
  2. Ermöglichen Sie die Definition von Acroform-Feldern über Seitenkoordinaten oder einen anderen Mechanismus. - Nicht implementiert
  3. Bietet die Möglichkeit, über Formularfelder in einer PDF-Datei zu iterieren, den Feldtyp zu prüfen und mit Daten zu füllen - iText v 2.0 .8
  4. Rendern Sie das PDF in ein Bild mit verschiedenen Auflösungen / DPI - zwei Implementierungen (PDFrenderer und IcePDF )
  5. Rendere HTML / XHTML-Dateien in PDF - Flying Saucer xhtmlrenderer
  6. Führen Sie alle obigen Schritte als library in einer Java-Serverumgebung aus (was Thread-Sicherheit bedeutet)

Was mag ich nicht

Ich bin unzufrieden mit dem folgenden:

  1. iText-Lizenzierung : Neue iText-Versionen sind unter der AGPL-Lizenz, die für mein Projekt (und kommerzielle Projekte im Allgemeinen?) kein Ansporn ist. Die Gebühr für die kommerzielle Lizenz ist nicht-trivial (von der nutzungsbasierten Preisgestaltung von ein paar Cent pro Dokument bis hin zu Zehntausenden für Site-Lizenzen) und wenn ich die Lizenzgebühren für die Software bezahlen möchte, würde ich gerne eine Vollversion machen Marktsuche nach dem besten Produkt. Die 2.x-Versionen von iText funktionieren OK, aber es sind genügend Bugs drin.
  2. PDF-Versionskonformität : Es gibt seltsame Konformitätsprobleme, wenn es um das Einbetten von Schriftarten, Querverweistabellen usw. in diesen Bibliotheken geht, um eine angemessene Menge an Kummer zu verursachen.
  3. Renderausgabequalität : Die Qualität des Renderns von PNG aus diesen Dateien leidet unter einigen Problemen in den Bereichen eingebettete Schriftarten, Bilder und Ebenen.

Was ich mir erhoffe

Ich hoffe, dass ich Feedback von Benutzern und Leuten bekomme, die PDF-Bibliotheken recherchiert haben. Bitte geben Sie möglichst viele der folgenden Informationen für Vollständigkeit und Nachwelt an.

  • ist Ihre Antwort / Kommentar basierend auf Verwendung oder Forschung
  • Name, Version der Bibliothek und Lizenz (wenn kommerzielle Lizenz, bitte Kosten wenn möglich einschließen)
  • Wofür verwenden Sie die Bibliothek für
  • ?
  • Was gefällt dir daran / was ist gut mit
  • ?
  • was magst du daran nicht / was ist nicht gut mit
  • wie ist Ihr Gesamteindruck
rajeshj 10.02.2011, 20:38
quelle

3 Antworten

3

iText kostet Sie nur Geld, wenn Sie mit dem Produkt, mit dem Sie es verwenden, tatsächlich Geld verdienen. Die meisten Menschen würden das für fair halten. Womit vergleichen Sie es?

iText bietet Unterstützung durch StackOverflow für nicht zahlende Benutzer. Und Premium-Support für zahlende Kunden.

    
mark stephens 11.02.2011 07:53
quelle
2

Unsere BFO-PDF-Bibliothek bei Ссылка kann das meiste ganz einfach tun - das Laden eines PDFs und das Bestimmen seiner Eigenschaften, Erstellen, Iterieren und Füllen des Formulars Felder und Rendering der PDF zu einer Bitmap ist alles Standard-Zeug. Die Konvertierung von HTML oder XHTML ist ein wenig komplizierter, aber wir haben ein Begleitprodukt, den BFO Report Generator, der dies mit einer XML-Syntax tut, die XHTML + CSS sehr ähnlich ist.

Ich bin mir nicht sicher, was Sie unter "PDF-Versionskonformität" verstehen - wenn Sie bestimmte Probleme haben, möchten Sie vielleicht weiter ausführen, aber ansonsten würde ich nicht zu sehr auf die tatsächliche Versionsnummer in PDF warten - Mit wenigen Ausnahmen sind PDF-Funktionen ziemlich rückwärts und vorwärts kompatibel (neuere Funktionen werden in der Regel nur von Lesern ignoriert, die sie nicht verstehen).

Das Rastern von PDF zu einer Bitmap ist eine Dose Würmer - es richtig zu machen bedeutet, Ihre eigenen Font- und Bildformat-Parser zu schreiben (eine große Aufgabe: Typ 1-Fonts erfordern einen PostScript-Parser) und den quadratischen Stift, der das PDF-Rendering ist Modell in das runde Loch, das das AWT-Modell ist. Es hängt auch davon ab, dass die PDF-Erstellungssoftware die Aufgabe ordnungsgemäß ausführt. Egal für welche Software Sie sich entscheiden, wenn eine Datei nicht korrekt gerendert wird, senden Sie sie per E-Mail an das Support-Team - wir sind immer auf der Suche nach problematischen PDF-Dateien für unsere Sammlungen.

Auf unserer Website finden Sie weitere Informationen und eine Testversion zum Herunterladen. Wenn Sie Informationen zu den Lizenzkosten wünschen, senden Sie uns einfach eine Nachricht.

Prost ... Mike (CTO @ BFO)

    
Mike B 14.02.2011 11:20
quelle
0

Es gibt auch Ghostscript, das PDF in verschiedenen DPI rendern kann

%Vor%     
j-a 15.11.2011 12:50
quelle

Tags und Links