Test in einer Live-Umgebung
Test in der Produktion ohne Wasserzeichen.
Funktioniert überall, wo Sie es brauchen.
Entdecken Sie die beste PDF-Bibliothek für Ihre Java-Anwendung. In diesem Artikel werden wir untersuchen, wie eine Java PDF-Bibliothek Ihr Projekt verbessern kann, und die beiden besten Bibliotheken anhand ihrer Funktionen, Lizenzkosten und Tutorials vergleichen. In der Vergangenheit war die Arbeit mit PDF-Dateien in Java eine Herausforderung, aber mit dem technologischen Fortschritt gibt es jetzt zahlreiche Java-APIs für die Verwaltung dieser Dateien.
Die beiden Bibliotheken, die wir untersuchen werden, sind:
Beide Bibliotheken bieten die Möglichkeit, PDF-Dateien in Java zu erstellen, zu bearbeiten und zu drucken. In diesem Vergleich werden wir ihre kombinierten Fähigkeiten, ihre Codebasis und ihre einfache Installation kurz und knapp bewerten.
Werfen wir zunächst einen Blick auf IronPDF.
IronPDF for Java erstellt und verwaltet PDF-Dateien. Sie ermöglicht es Entwicklern, PDF-Dateien zu lesen, zu erstellen und zu bearbeiten, ohne dass dafür Adobe-Software erforderlich ist. Entwickler können benutzerdefinierte Kopf- und Fußzeilen hinzufügen, Signaturen hinzufügen und andere Sicherheitseinschränkungen vornehmen. Dank vollständiger Multithreading- und Asynchron-Unterstützung erreicht IronPDF eine hohe Leistung, wenn Entwickler sie benötigen.
IronPDF for Java bietet verschiedene Werkzeuge für die PDF-Produktion und -Bearbeitung, mit denen Entwickler ihre Java-Anwendungen schnell auf den neuesten Stand bringen können.
HTML-zu-PDF-Konvertierungen: Diese Funktion ermöglicht die Generierung von PDF-Dokumenten aus HTML-Dateien, MVC-Ansichten, Webformularen und URLs.
PDF Imaging: Diese Funktion ermöglicht es Entwicklern, PDFs aus Bildern zu erstellen und Bilder aus PDFs zu extrahieren.
PDF-Bearbeitung: IronPDF kann Wasserzeichen, Kopf- und Fußzeilen, Hintergründe und Vordergründe hinzufügen, Seiten hinzufügen und entfernen und vieles mehr.
PDF Content Extraction: IronPDF kann Text und Bilder aus PDFs extrahieren(die Extraktion von Text aus eingebetteten PDF-Bildern könnte die Verwendung desIronOCR-Bibliothek).
Kompatibilität: IronPDF for Java ist kompatibel mit Java 8+ und allen modernen Betriebssystemen und IDEs.
OpenPDF ist eine quelloffene, freie Java-Bibliothek mit einer dualen LGPL- und MPL-Lizenz, die speziell für die Arbeit mit PDFs entwickelt wurde. Es ermöglicht die Erstellung und Bearbeitung von PDF-Dokumenten sowie die Bearbeitung bestehender Dokumente und die Extraktion von Inhalten. OpenPDF ist ein praktisches Werkzeug für die Arbeit mit PDF-Dokumenten, sei es zum Erstellen neuer oder zum Bearbeiten bestehender Dokumente.
PDFs erstellen und drucken: Mit OpenPDF können Sie neue PDF-Dokumente von Grund auf erstellen und die Java-Druck-API verwenden, um eine PDF-Datei zu drucken.
Split und Merge: OpenPDF kann ein einzelnes PDF in mehrere Dateien aufteilen oder mehrere PDF-Dateien zu einer einzigen PDF-Datei zusammenführen.
Textextrahieren: Mit OpenPDF können Sie Text aus PDF-Dateien und PDF-Formularen extrahieren.
Signieren: OpenPDF ermöglicht es seinen Entwicklern, PDF-Dateien digital zu signieren.
Als Bild speichern: OpenPDF kann PDFs als Bilddateien speichern, z. B. als JPEG oder PNG.
Office to PDF: OpenPDF kann MS Word, MS PowerPoint und MS Excel in PDF-Dokumente konvertieren.
Parsing HTML: Es bietet auch die Möglichkeit, HTML-Dateien in PDF-Dateien zu parsen.
Die Installation von IronPDF for Java ist selbst für Java-Neulinge ein unkomplizierter Prozess.
Um IronPDF for Java zu verwenden, benötigen Sie eine IDE. In diesem Artikel verwenden wir JetBrains IntelliJ IDE für die Installation und die Beispiele.
Um zu beginnen, öffnen Sie JetBrains IntelliJ IDE und erstellen Sie ein neues Maven-Projekt.
Es erscheint ein neues Fenster. Geben Sie den Namen des Projekts ein und klicken Sie auf die Schaltfläche "Fertig stellen".
Nachdem Sie auf "Fertigstellen" geklickt haben, wird ein neues Projekt geöffnet und die Standarddatei pom.xml geöffnet. Das ist gut, denn wir müssen die Maven-Abhängigkeiten von IronPDF for Java zu dieser Datei hinzufügen.
Fügen Sie der Datei pom.xml die folgenden Abhängigkeiten hinzu.
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>com.ironsoftware</artifactId>
<version>2024.11.4</version>
</dependency>
Sobald Sie die Abhängigkeiten zur POM.xml-Datei hinzugefügt haben, erscheint ein kleines Symbol in der oberen rechten Ecke der POM.xml-Datei.
Klicken Sie auf dieses Symbol, um die Maven-Abhängigkeiten von IronPDF for Java zu installieren. Dieser Vorgang kann je nach Ihrer Internetverbindung einige Minuten dauern.
Die Installation von OpenPDF ist ähnlich wie die von IronPDF for Java.
Um zu beginnen, öffnen Sie JetBrains IntelliJ IDE und erstellen Sie ein neues Maven-Projekt
Es erscheint ein neues Fenster. Geben Sie den Namen des Projekts ein und klicken Sie auf die Schaltfläche "Fertig stellen".
Nachdem Sie auf "Fertigstellen" geklickt haben, wird ein neues Projekt geöffnet und die Standarddatei pom.xml angezeigt. Dies ist gut, da wir die Maven-Abhängigkeiten von OpenPDF hinzufügen müssen.
Fügen Sie die OpenPDF-Abhängigkeit in den Abschnitt dependencies der Datei pom.xml ein.
<dependencies>
<dependency>
<groupId>com.github.librepdf</groupId>
<artifactId>openpdf</artifactId>
<version>1.3.30</version>
</dependency>
</dependencies>
Wenn Sie das Repository und den Abhängigkeitscode hinzufügen, erscheint ein kleines Symbol in der oberen rechten Ecke der pom.xml-Datei.
Klicken Sie auf das Symbol, um die OpenPDF for Java-Abhängigkeiten zu installieren. Nach ein paar Minuten ist es installiert und einsatzbereit.
Neben der Attraktivität für den Benutzer bietet das PDF-Format auch einige technische Vorteile. PDF-Dateien sind plattformunabhängig und können auf allen Betriebssystemen und Geräten gelesen werden. Außerdem bleiben Formatierung und Layout erhalten, so dass das Dokument immer gleich aussieht, egal wer es öffnet. PDF-Dateien sind außerdem kompakt und können leicht weitergegeben und gespeichert werden. Durch die Verwendung von PDF in Ihrer Java-Anwendung können Sie Ihren Benutzern ein effizientes und gut unterstütztes Dokumentenformat zur Verfügung stellen, das eine breite Palette von Funktionen und Kompatibilität bietet.
Im Folgenden wird erläutert, wie man eine neue PDF-Datei mit den Bibliotheken IronPDF und OpenPDF erstellt.
Die Erstellung und Bearbeitung von PDF-Dateien mit IronPDF for Java ist einfach und erfordert nur ein paar Zeilen Code. Nachfolgend finden Sie ein Beispiel:
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;
public class main {
public static void main(String [] args) throws IOException {
License.setLicenseKey("YOUR-LICENSE-KEY");
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("<h1> ~Hello World~ </h1> Made with IronPDF!");
myPdf.saveAs(Paths.get("html_saved.pdf"));
}
}
Eine neue PDF-Datei kann mit OpenPDF erstellt werden. Nachfolgend sehen Sie den Code, mit dem dies geschieht:
import java.io.FileOutputStream;
import java.io.IOException;
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Paragraph;
import com.lowagie.text.pdf.PdfWriter;
public class main {
/**
* Generates a PDF file with the text 'Hello World'
*/
public static void main(String [] args) {
System.out.println("Hello World");
Document document = new Document();
try {
PdfWriter.getInstance(document,
new FileOutputStream("HelloWorld.pdf"));
document.open();
document.add(new Paragraph("Hello World"));
} catch (DocumentException de) {
System.err.println(de.getMessage());
} catch (IOException ioe) {
System.err.println(ioe.getMessage());
}
document.close();
}
}
Webseiten werden von Menschen häufig aufgerufen. Es gibt mehrere Websites, die Sie regelmäßig besuchen sollten. Es ist möglicherweise nicht möglich, die Website jedes Mal zu besuchen. Wenn Sie häufig auf die Informationen zugreifen müssen, ist es bequemer, sie als Dokument zu speichern, auf das Sie jederzeit von Ihrem Telefon oder Laptop aus zugreifen können. Das PDF-Format ist eine bessere Option, da es die Vorteile des Passwortschutzes bietet und das Dokument sicher macht.
Die Konvertierung von HTML in PDF ist eine der am häufigsten verwendeten Funktionen von PDF-Bibliotheken und wird aufgrund ihrer Vorteile von fast allen Entwicklern genutzt. In diesem Abschnitt werden wir die kodierten Beispiele sowohl für IronPDF for Java als auch für OpenPDF besprechen.
Der hochmoderne Renderer von IronPDF ermöglicht die nahtlose Konvertierung von HTML in PDF auf drei verschiedene Arten.
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;
public class main {
public static void main(String [] args) throws IOException {
License.setLicenseKey("YOUR-LICENSE-KEY");
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("index.html");
// Save the PdfDocument to a file
myPdf.saveAs(Paths.get("html_file_saved.pdf"));
}
}
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;
public class main {
public static void main(String [] args) throws IOException {
License.setLicenseKey("YOUR-LICENSE-KEY");
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("<h1> Example of HTML to PDF using IronPDF for Java </h1> IronPDF for java is robust Java API for creating, converting and manipulating PDF files");
myPdf.saveAs(Paths.get("html_saved.pdf"));
}
}
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;
public class main {
public static void main(String [] args) {
License.setLicenseKey("YOUR-LICENSE-KEY");
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");
try {
myPdf.saveAs(Paths.get("url.pdf"));
} catch (IOException e) {
e.printStackTrace();
}
}
}
Die IronPDF-Bibliothek bietet fortschrittliche Rendering-Funktionen für die Konvertierung von HTML in PDF auf drei verschiedene Arten, um eine nahtlose Konvertierung zu ermöglichen.
Andererseits bietet OpenPDF nur die Möglichkeit, HTML-Dateien in PDF-Dateien umzuwandeln, wobei die entscheidende Funktion der Konvertierung von URLs in PDF-Dateien fehlt, was einen Nachteil gegenüber anderen Bibliotheken darstellen könnte.
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.html.HtmlParser;
import com.lowagie.text.pdf.PdfWriter;
import java.io.FileOutputStream;
import java.io.IOException;
public class main {
/**
* Generates an HTML page with the text 'Hello World'
*
* @param args no arguments needed here
*/
public static void main(String [] args) {
System.out.println("Parse Hello World");
try (Document document = new Document()) {
PdfWriter.getInstance(document, new FileOutputStream("contact.pdf"));
document.open();
HtmlParser.parse(document, main.class.getClassLoader().getResourceAsStream("contact.html"));
} catch (DocumentException
IOException de) {
System.err.println(de.getMessage());
}
}
}
Die Umwandlung von Bildern in PDF ist von Vorteil. Ein Vorteil ist, dass Sie Fotos in ein besser lesbares und übertragbares Format bringen können. Ein weiterer Vorteil ist, dass die Dateigröße bei gleichbleibender Bildqualität erheblich reduziert wird.
Mit IronPDF können Sie ganz einfach jedes Bildformat in eine PDF-Datei umwandeln.
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.DirectoryStream;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
public class main {
public static void main(String [] args) {
Path imageDirectory = Paths.get("assets/images");
List<Path> imageFiles = new ArrayList<>();
try (DirectoryStream<Path> stream = Files.newDirectoryStream(imageDirectory, "*.{png,jpg}")) {
for (Path entry : stream) {
imageFiles.add(entry);
} PdfDocument.fromImage(imageFiles).saveAs(Paths.get("assets/composite.pdf"));
} catch (IOException exception) {
throw new RuntimeException(String.format("Error converting images to PDF from directory: %s: %s",
imageDirectory,
exception.getMessage()),
exception);
}
}
}
OpenPDF bietet auch die Konvertierung von Bildern in PDF an, allerdings nur in begrenzten Formaten. Diese Formate sind PNG, JPG und TIFF.
import java.io.FileOutputStream;
import java.io.IOException;
import com.lowagie.text.Document;
import com.lowagie.text.Image;
import com.lowagie.text.pdf.PdfWriter;
public class main {
public static void main(String [] args) {
System.out.println("Images");
// step 1: creation of a document-object
Document document = new Document();
try {
// step 2:
// we create a writer that listens to the document
// and directs a PDF-stream to a file
PdfWriter.getInstance(document, new FileOutputStream("Images.pdf"));
// step 3: we open the document
document.open();
// step 4:
document.add(new Image("11.png") {
});
Image jpg = Image.getInstance("11.png");
}
catch(DocumentException
IOException de) {
System.err.println(de.getMessage());
}
// step 5: we close the document
document.close();
}
}
IronPDF for Java ist eine leistungsstarke PDF-Bibliothek, die sowohl für private als auch für kommerzielle Zwecke verwendet werden kann. Es bietet eine Vielzahl von Lizenzierungsoptionen für Entwickler, einschließlich Einzelprojektlizenzen, SaaS- und OEM-Weiterverteilung und Lizenzen für multinationale Unternehmen. Die Kosten für das Lite-Paket beginnen bei $749 USD, was eine unbefristete Lizenz, eine 30-tägige Geld-zurück-Garantie und ein Jahr Software-Support und Upgrades beinhaltet. Einer der Vorteile von IronPDF ist, dass es keine wiederkehrenden Kosten gibt, was bedeutet, dass die einmal erworbene Lizenz lebenslang genutzt werden kann.
Bei Entwicklerprojekten spielen die Lizenzierungsoptionen eine entscheidende Rolle. OpenPDF ist eine Open-Source-Software, die unter den Bedingungen der Open-Source-Lizenzen LGPL und MPL lizenziert ist. Dies bedeutet, dass jeder, der eine Anwendung verwendet, die OpenPDF(auch über ein Unternehmensnetz oder das Internet) haben Anspruch auf eine vollständige Kopie des Quellcodes des Programms, wenn es unter LGPL und MPL lizenziert ist, was es ideal für akademische Zwecke macht. Für kommerzielle Projekte ist es jedoch immer empfehlenswert, OpenPDF zu kontaktieren, um einen Kostenvoranschlag zu erhalten.
Java-Entwickler und IT-Experten können mit der IronPDF-Bibliothek problemlos PDF in ihre Java-Anwendungen integrieren. Es bietet eine breite Palette von Funktionen, einschließlich der Formatierung von PDF-Dateien, der Erstellung von Diagrammen und Grafiken, der Konvertierung von HTML und Bildern in PDF, der Aufteilung und Zusammenführung von PDF-Dateien und der Änderung von PDF-Dokumenten. IronPDF unterstützt alle Java-Versionen ab Java 8 und auch JVM-Sprachen wie Java, Kotlin und Scala. Die Bibliothek ist außerdem mit erweiterten Sicherheitsfunktionen für PDF-Dokumente ausgestattet.
OpenPDF ist eine quelloffene, freie Java-Bibliothek mit einer LGPL- und MPL-Lizenz. Es ermöglicht die Erstellung und Änderung von PDF-Dokumenten und die Extraktion von Inhalten aus ihnen. OpenPDF ist zwar nützlich, um neue PDF-Dokumente zu erstellen oder bestehende zu bearbeiten, bietet aber nicht so viele Funktionen wie IronPDF für die Bearbeitung von PDF-Dateien.
Es ist nicht möglich, IronPDF und OpenPDF allein auf der Grundlage ihrer Lizenzierung zu vergleichen, da es sich bei der einen um eine kommerzielle Bibliothek und bei der anderen um eine Open-Source-Bibliothek handelt. In Bezug auf die Funktionen bietet OpenPDF jedoch nur begrenzte Möglichkeiten zur Bearbeitung von PDF-Dateien. Andererseits bietet IronPDF for Java einekostenlose Testlizenz für Entwickler, um die Bibliothek und ihre erweiterten Funktionen zu testen.
IronPDF bietet viel mehr Funktionen als OpenPDF. Darüber hinaus bietet IronPDF eine umfangreiche Dokumentation, die das Schreiben von Code mit der Bibliothek sehr einfach macht. OpenPDF neigt dazu, langwierigen und komplexen Code zu produzieren, und es gibt nur sehr wenig Dokumentation dafür.
Die HTML-zu-PDF-Konvertierung von OpenPDF ist nicht für große HTML-Dateien geeignet und unterstützt keine URL-zu-PDF-Konvertierung.
9 .NET API-Produkte für Ihre Bürodokumente