PRODUKT-VERGLEICHE

Ein Vergleich zwischen IronPDF for Java und Apache PDFBox

Veröffentlicht 14. Januar 2023
Teilen Sie:

Dieser Artikel befasst sich mit den folgenden zwei der beliebtesten Bibliotheken, die in Java für die Arbeit mit PDF-Dateien verwendet werden:

  1. IronPDF

  2. Apache PDFBox

    Welche Bibliothek sollten wir nun verwenden? In diesem Artikel werde ich die Kernfunktionen beider Bibliotheken vergleichen, damit Sie entscheiden können, welche für Ihre Produktionsumgebung am besten geeignet ist.

IronPDF

DieIronPDF bibliothek unterstütztKonvertierung von HTML in PDF für Java 8+, Kotlin und Scala. Dieser Ersteller bietet plattformübergreifende Unterstützung, d. h. für Windows-, Linux- oder Cloud-Plattformen. Es wurde speziell für Java entwickelt und legt Wert auf Genauigkeit, Benutzerfreundlichkeit und Geschwindigkeit.

IronPDF wurde entwickelt, um Softwareentwickler bei der Erstellung, Bearbeitung und Extraktion von Inhalten aus PDF-Dokumenten zu unterstützen. Sie basiert auf dem Erfolg und der Beliebtheit von IronPDF for .NET.

Zu den herausragenden Merkmalen von IronPDF gehören:

HTML-Assets verwenden

  • HTML(5 und darunter)cSS(Bildschirm & Druck), Bilder(JPG, PNG, GIF, TIFF, SVG, BMP)javaScript(+ Render-Verzögerungen)
  • Schriftarten(Web & Icon)

HTML zu PDF

  • Erstellung und Bearbeitung von HTML-Dateien/Zeichenfolgen in PDF-Dokumenten
  • URL zu PDF

Bilder konvertieren

  • Bild in neue PDF-Dokumente
  • PDF zu Bild

Benutzerdefinierte Papiereinstellungen

  • Benutzerdefiniertes Papierformat, Ausrichtung und Drehung
  • Margen(mm, Zoll & Null)
  • Farbe & Graustufen, Auflösung & JPEG-Qualität

Zusätzliche Merkmale

  • Website & Systemanmeldungen
  • Benutzerdefinierte Agenten und Proxys
  • HTTP-Kopfzeilen

Apache PDFBox-Bibliothek

Apache PDFBox ist eine Open-Source-Java-Bibliothek für die Arbeit mit PDF-Dateien. Sie ermöglicht es, bestehende Dokumente zu erstellen, zu bearbeiten und zu manipulieren. Es kann auch Inhalte aus Dateien extrahieren. Die Bibliothek bietet mehrere Dienstprogramme, mit denen verschiedene Operationen an Dokumenten durchgeführt werden können.

Hier sind die herausragenden Merkmale der Apache PDFBox.

Text extrahieren

  • Extrahieren von Unicode-Text aus Dateien.

Teilen & Zusammenführen

  • Eine einzelne PDF-Datei in mehrere Dateien aufteilen
  • Mehrere Dokumente zusammenführen.

Formulare ausfüllen

  • Daten aus Formularen extrahieren
  • Füllen Sie ein PDF-Formular aus.

Preflight

  • Validierung von Dateien anhand des PDF/A-1b-Standards.

Drucken

  • Drucken Sie eine PDF-Datei über die Standard-Druck-API.

Als Bild speichern

  • Speichern Sie PDFs als PNG, JPEG oder andere Bildtypen.

PDFs erstellen

  • Entwickeln Sie eine PDF-Datei von Grund auf mit eingebetteten Schriftarten und Bildern.

Unterzeichnung

  • Digitales Signieren von Dateien.

Übersicht

Der Rest des Artikels lautet wie folgt:

  1. IronPDF-Installation

  2. Apache PDFBox-Installation

  3. PDF-Dokument erstellen

  4. Bilder zum Dokumentieren

  5. Dokumente verschlüsseln

  6. Lizenzvergabe

  7. Schlussfolgerung

    Jetzt werden wir die Bibliotheken herunterladen und installieren, um sie und ihre leistungsstarken Funktionen zu vergleichen.

1. IronPDF-Installation

Die Installation von IronPDF for Java ist einfach. Es gibt verschiedene Wege, dies zu tun. In diesem Abschnitt werden zwei der gängigsten Methoden vorgestellt.

1.1. JAR herunterladen und die Bibliothek hinzufügen

Um die IronPDF JAR-Datei herunterzuladen, besuchen Sie dieMaven-Website für IronPDF und laden Sie die neueste Version von IronPDF herunter.

  • Klicken Sie auf die Option Downloads und laden Sie die JAR-Datei herunter.

    Ein Vergleich zwischen IronPDF for Java und Apache PDFBox für Java - Abbildung 1: Download IronPDF JAR

    IronPDF JAR herunterladen

    Sobald die JAR-Datei heruntergeladen ist, ist es an der Zeit, die Bibliothek in unser Maven-Projekt zu installieren. Sie können jede IDE verwenden, wir werden jedoch NetBeans einsetzen. Im Abschnitt Projekte:

  • Klicken Sie mit der rechten Maustaste auf den Ordner Libraries und wählen Sie die Option JAR/Ordner hinzufügen.
    Ein Vergleich zwischen IronPDF for Java und Apache PDFBox for Java - Abbildung 2: IronPDF-Bibliothek in Netbeans hinzufügen

    IronPDF-Bibliothek in Netbeans hinzufügen

  • Wechseln Sie in den Ordner, in den Sie die JAR-Datei heruntergeladen haben.
  • Wählen Sie die IronPDF JAR-Datei aus und klicken Sie auf die Schaltfläche Öffnen.
    Ein Vergleich zwischen IronPDF For Java und Apache PDF Box for Java - Abbildung 3: IronPDF JAR öffnen

    IronPDF JAR öffnen

1.2. Installation über Maven als Abhängigkeit

Eine andere Möglichkeit, IronPDF herunterzuladen und zu installieren, ist die Verwendung von Maven. Sie können die Abhängigkeit einfach in die pom.xml-Datei einfügen oder das Abhängigkeitstool von NetBeans verwenden, um sie in Ihr Projekt einzubinden.

Hinzufügen der Bibliotheksabhängigkeit in pom.xml

Kopieren Sie den folgenden Code und fügen Sie ihn in die pom.xml ein.

``xml-mvn-install-ao


#### Hinzufügen der Bibliothek mit Hilfe der Funktion Abhängigkeiten
- Rechts-Klick auf Abhängigkeiten
- Wählen Sie Abhängigkeit hinzufügen und geben Sie die folgenden Details mit der aktualisierten Version ein
<div class="content-img-align-center">
    <div class="center-image-wrapper">
        <a rel="nofollow" href="/static-assets/ironpdf-java/blog/apache-pdfbox-html-to-pdf-java/apache-pdfbox-html-to-pdf-java-4.webp" target="_blank"><img src="/static-assets/ironpdf-java/blog/apache-pdfbox-html-to-pdf-java/apache-pdfbox-html-to-pdf-java-4.webp" alt="Ein Vergleich zwischen IronPDF für Java und Apache PDF Box für Java - Abbildung 4: Hinzufügen der IronPDF-Abhängigkeit" class="img-responsive add-shadow"></a>
        <p class="content__image-caption">IronPDF-Abhängigkeit hinzufügen</p>
    </div>
</div>
Installieren wir nun Apache PDFBox.

## 2. Apache PDFBox-Installation

Wir können PDFBox mit denselben Methoden wie IronPDF herunterladen und installieren.

### 2.1. JAR herunterladen und die Bibliothek manuell hinzufügen

Um PDFBox JAR zu installieren, besuchen Sie die offizielle Website und[pDFBox-Bibliothek herunterladen](https://pdfbox.apache.org/) die neueste Version.

Nachdem Sie ein Projekt erstellt haben, können Sie im Projektbereich

- Klicken Sie mit der rechten Maustaste auf den Ordner Libraries und wählen Sie die Option **JAR/Ordner hinzufügen**.
<div class="content-img-align-center">
    <div class="center-image-wrapper">
        <a rel="nofollow" href="/static-assets/ironpdf-java/blog/apache-pdfbox-html-to-pdf-java/apache-pdfbox-html-to-pdf-java-5.webp" target="_blank"><img src="/static-assets/ironpdf-java/blog/apache-pdfbox-html-to-pdf-java/apache-pdfbox-html-to-pdf-java-5.webp" alt="Ein Vergleich zwischen IronPDF For Java und Apache PDF Box for Java - Abbildung 5: Bibliothek hinzufügen" class="img-responsive add-shadow"></a>
        <p class="content__image-caption">Bibliothek hinzufügen</p>
    </div>
</div>
- Wechseln Sie in den Ordner, in den Sie die JAR-Datei heruntergeladen haben.
- Wählen Sie die PDFBox JAR-Datei aus und klicken Sie auf die Schaltfläche Öffnen.
<div class="content-img-align-center">
    <div class="center-image-wrapper">
        <a rel="nofollow" href="/static-assets/ironpdf-java/blog/apache-pdfbox-html-to-pdf-java/apache-pdfbox-html-to-pdf-java-6.webp" target="_blank"><img src="/static-assets/ironpdf-java/blog/apache-pdfbox-html-to-pdf-java/apache-pdfbox-html-to-pdf-java-6.webp" alt="Ein Vergleich zwischen IronPDF for Java und Apache PDFBox for Java - Abbildung 6: Öffnen Sie das PDFBox JAR" class="img-responsive add-shadow"></a>
        <p class="content__image-caption">PDFBox JAR öffnen</p>
    </div>
</div>

### 2.2. Installation über Maven als Abhängigkeit

#### Hinzufügen von Abhängigkeiten in der pom.xml

Kopieren Sie den folgenden Code und fügen Sie ihn in die pom.xml ein.

```xml
<dependencies>
    <dependency>  
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>pdfbox-app</artifactId>
        <version>3.0.0-alpha3</version>
    </dependency>
</dependencies>

Dadurch wird die PDFBox-Abhängigkeit automatisch heruntergeladen und im Repository-Ordner installiert. Sie ist nun einsatzbereit.

Hinzufügen von Abhängigkeiten mit der Funktion Abhängigkeiten

  • Rechts-Klick auf Abhängigkeiten im Projektbereich
  • Wählen Sie Abhängigkeit hinzufügen und geben Sie die folgenden Details mit der aktualisierten Version ein
    Ein Vergleich zwischen IronPDF für Java und Apache PDFBox für Java - Abbildung 7: PDFBox-Abhängigkeit hinzufügen

    PDFBox-Abhängigkeit hinzufügen

3. PDF-Dokument erstellen

3.1. Verwendung von IronPDF

IronPDF bietet verschiedene Methoden zur Erstellung von Dateien. Werfen wir einen Blick auf zwei der wichtigsten Methoden.

Vorhandene URL in PDF umwandeln

IronPDF macht es sehr einfach, diedokumente aus HTML generieren. Das folgende Codebeispiel konvertiert die URL einer Webseite in eine PDF-Datei.

License.setLicenseKey("YOUR-LICENSE-KEY");
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://ironpdf.com");
myPdf.saveAs(Paths.get("url.pdf"));
JAVA

Die Ausgabe ist die unten stehende URL, die gut formatiert und wie folgt gespeichert wird:

Ein Vergleich zwischen IronPDF for Java und Apache PDF Box für Java - Abbildung 8: IronPDF URL-Ausgabe

IronPDF URL-Ausgabe

HTML-Eingabezeichenfolge in PDF

Das folgende Codebeispiel zeigt, wie ein HTML-String zum Rendern einer PDF-Datei in Java verwendet werden kann. Sie verwenden einfach einen HTML-String oder ein Dokument, um es in neue Dokumente zu konvertieren.

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"));
JAVA

Die Ausgabe lautet wie folgt:

Ein Vergleich zwischen IronPDF For Java und Apache PDF Box für Java - Abbildung 9: IronPDF HTML-Ausgabe

IronPDF HTML-Ausgabe

3.2. Apache PDFBox verwenden

PDFBox kann auch neue PDF-Dokumente aus verschiedenen Formaten erzeugen, aber es kann nicht direkt aus einer URL oder einem HTML-String konvertieren.

Das folgende Codebeispiel erstellt ein Dokument mit Text:

//Create document object
PDDocument document = new PDDocument();    

PDPage blankPage = new PDPage();
document.addPage(blankPage);

//Retrieving the pages of the document 
PDPage paper = document.getPage(0);
PDPageContentStream contentStream = new PDPageContentStream(document, paper);

//Begin the Content stream 
contentStream.beginText(); 

//Setting the font to the Content stream  
contentStream.setFont(PDType1Font.TIMES_ROMAN, 12);

//Setting the position for the line 
contentStream.newLineAtOffset(25, 700);

String text = "This is the sample document and we are adding content to it.";

//Adding text in the form of a string 
contentStream.showText(text);      

//Ending the content stream
contentStream.endText();

System.out.println("Content added");

//Closing the content stream
contentStream.close();

//Saving the document
document.save("C:/PdfBox_Examples/my_doc.pdf");

System.out.println("PDF created");  

//Closing the document  
document.close();
JAVA
Ein Vergleich zwischen IronPDF for Java und Apache PDF Box für Java - Abbildung 10: PDFBox Positionierter Output

PDFBox Positionierte Ausgabe

Wenn wir jedoch `contentStream.newLineAtOffset' entfernen(25, 700)wenn Sie das obige Code-Beispiel verwenden und das Projekt ausführen, wird eine PDF-Datei mit einer Ausgabe am unteren Rand der Seite erstellt. Dies kann für einige Entwickler ziemlich lästig sein, da sie den Text mit(x,y) koordinaten. y = 0" bedeutet, dass der Text am unteren Rand erscheint.

Ein Vergleich zwischen IronPDF For Java und Apache PDF Box für Java - Abbildung 11: PDFBox ohne Positionierungsausgabe

PDFBox ohne Positionierungsausgabe

4. Bilder zum Dokumentieren

4.1. Verwendung von IronPDF

IronPDF kann problemlos mehrere Bilder in eine einzige PDF-Datei konvertieren. Der Code zum Hinzufügen mehrerer Bilder zu einem einzigen Dokument lautet wie folgt:

import com.ironsoftware.ironpdf.*;  
import java.io.IOException;  
import java.nio.file.*;  
import java.util.ArrayList;  
import java.util.List;  

// Reference to the directory containing the images that we desire to convert
List<Path> images = new ArrayList<>();
images.add(Paths.get("imageA.png"));
images.add(Paths.get("imageB.png"));
images.add(Paths.get("imageC.png"));
images.add(Paths.get("imageD.png"));
images.add(Paths.get("imageE.png"));

// Render all targeted images as PDF content and save them together in one document.
PdfDocument merged = PdfDocument.fromImage(images);
merged.saveAs("output.pdf");
JAVA
Ein Vergleich zwischen IronPDF For Java und Apache PDF Box für Java - Abbildung 12: IronPDF Bilder zur Ausgabe

IronPDF Bilder zur Ausgabe

4.2. Apache PDFBox verwenden

import java.io.File;

import org.apache.pdfbox.pdmodel.PDDocument; 
import org.apache.pdfbox.pdmodel.PDPage;
import org.apache.pdfbox.pdmodel.PDPageContentStream;
import org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject;

// Reference to the directory containing the images that we desire to convert
Path imageDirectory = Paths.get("assets/images");

// Create an empty list to contain Paths to images from the directory.
List<Path> imageFiles = new ArrayList<>();

PDDocument doc = new PDDocument();

// Use a DirectoryStream to populate the list with paths for each image in the directory that we want to convert
try (DirectoryStream<Path> stream = Files.newDirectoryStream(imageDirectory, "*.{png,jpg}")) {
    for (Path entry : stream) {
        imageFiles.add(entry);
    }
    for (int i = 0; i < imageFiles.size(); i++){
        //Add a Page
PDPage blankPage = new PDPage();
        doc.addPage(blankPage);
        PDPage page = doc.getPage(i);

        //Creating PDImageXObject object
        PDImageXObject pdImage = PDImageXObject.createFromFile(imageFiles.get(i).toString(),doc);

        //creating the PDPageContentStream object
        PDPageContentStream contents = new PDPageContentStream(doc, page);

        //Drawing the image in the document
        contents.drawImage(pdImage, 0, 0);

        System.out.println("Image inserted");

        //Closing the PDPageContentStream object
        contents.close();
    }
    //Saving the document
    doc.save("C:/PdfBox_Examples/sample.pdf");

    //Closing the document
    doc.close();

} catch (IOException exception) {
    throw new RuntimeException(String.format("Error converting images to PDF from directory: %s: %s",
            imageDirectory,
            exception.getMessage()),
            exception);
}
JAVA
Ein Vergleich zwischen IronPDF for Java und Apache PDF Box for Java - Abbildung 13: PDFBox Images to Output

PDFBox Bilder zur Ausgabe

5. Dokumente verschlüsseln

5.1. Verwendung von IronPDF

Der Code zum Verschlüsseln von PDFs mit einem Passwort in IronPDF ist unten angegeben:

// Open a document(or create a new one from HTML)
PdfDocument pdf = PdfDocument.fromFile(Paths.get("assets/composite.pdf"));

// Edit security settings
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setOwnerPassword("top-secret");
securityOptions.setUserPassword("sharable");

// Change or set the document encryption password
SecurityManager securityManager = pdf.getSecurity();
securityManager.setSecurityOptions(securityOptions);
pdf.saveAs(Paths.get("assets/secured.pdf"));
JAVA

5.2. Apache PDFBox verwenden

Apache PDFBox bietet auch die Möglichkeit der Dokumentenverschlüsselung, um die Sicherheit der Dateien zu erhöhen. Sie können auch zusätzliche Informationen wie Metadaten hinzufügen. Der Code lautet wie folgt:

//Loading an existing document
File file = new File("C:/PdfBox_Examples/sample.pdf");
PDDocument document = PDDocument.load(file);

//Creating access permission object
AccessPermission ap = new AccessPermission();

//Creating StandardProtectionPolicy object
StandardProtectionPolicy spp = new StandardProtectionPolicy("1234", "1234", ap);

//Setting the length of the encryption key
spp.setEncryptionKeyLength(128);

//Setting the access permissions
spp.setPermissions(ap);

//Protecting the document
document.protect(spp);

System.out.println("Document encrypted");

//Saving the document
document.save("C:/PdfBox_Examples/encrypted.pdf");
//Closing the document
document.close();
JAVA

6. Preisgestaltung und Lizenzierung

IronPDF Preisgestaltung und Lizenzierung

IronPDF ist kostenlos für die Entwicklung einfacher PDF-Anwendungen und kann jederzeit für die kommerzielle Nutzung lizenziert werden. IronPDF bietet Einzelprojektlizenzen, Einzelentwicklerlizenzen, Lizenzen für Agenturen und multinationale Organisationen sowie SaaS- und OEM-Weiterverteilungslizenzen und Support. Alle Lizenzen sind erhältlich mit einen kostenlosen Testder Preis beinhaltet eine 30-tägige Geld-zurück-Garantie sowie ein Jahr Software-Support und Upgrades.

Das Lite-Paket ist für $749 erhältlich. Bei IronPDF-Produkten fallen keinerlei wiederkehrende Gebühren an. Ausführlichere Informationen zur Softwarelizenzierung finden Sie auf der ProduktseiteIronPDF-Lizenzierungsseite.

Ein Vergleich zwischen IronPDF für Java und Apache PDF Box für Java - Abbildung 14: IronPDF Licensing

IronPDF-Lizenzierung

Preise und Lizenzierung von Apache PDFBox

Apache PDFBox ist frei und kostenlos erhältlich. Sie ist kostenlos, unabhängig davon, wie sie verwendet wird, ob für persönliche, interne oder kommerzielle Zwecke.

Sie können die Apache License 2.0(aktuelle Version) von derApache-Lizenz 2.0 Text. Um die Kopie der Lizenz einzubinden, fügen Sie sie einfach in Ihre Arbeit ein. Sie können auch den folgenden Hinweis als Kommentar am Anfang Ihres Quellcodes anbringen.

Copyright [yyyy] [name of copyright owner]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Schlussfolgerung

Im Vergleich dazu hat IronPDF gegenüber Apache PDFBox die Nase vorn, sowohl was die Funktionalität als auch die Produktunterstützung betrifft. Sie bietet auch SaaS- und OEM-Support, was in der modernen Softwareentwicklung eine Voraussetzung ist. Die Bibliothek ist jedoch nicht wie Apache PDFBox für die kommerzielle Nutzung frei.

Unternehmen mit umfangreichen Softwareanwendungen benötigen möglicherweise kontinuierliche Fehlerbehebungen und Support von Drittanbietern, um Probleme zu lösen, die während der Softwareentwicklung auftreten. Dies ist etwas, das vielen Open-Source-Lösungen wie Apache PDFBox fehlt, die auf die freiwillige Unterstützung ihrer Entwicklergemeinschaft angewiesen sind, um sie zu pflegen. Kurz gesagt, IronPDF eignet sich am besten für den Einsatz in Unternehmen und auf dem Markt, während Apache PDFBox besser für persönliche und nicht-kommerzielle Anwendungen geeignet ist.

Es gibt auch eine kostenlose Testversion, um die Funktionalität von IronPDF zu testen. Probieren Sie es aus oderironPDF kaufen.

Sie können jetzt alle Iron Software Produkte der Iron Suite zu einem stark reduzierten Preis erhalten. Besuchen Sie dieseIron Suite-Webseite für weitere Informationen über dieses tolle Angebot.

< PREVIOUS
Ein Vergleich zwischen IronPDF for Java und Spire.PDF Java
NÄCHSTES >
Ein Vergleich zwischen IronPDF for Java und iTextPDF itext7 for Java

Sind Sie bereit, loszulegen? Version: 2024.11 gerade veröffentlicht

Gratis Maven Download Lizenzen anzeigen >