Zum Fußzeileninhalt springen
VERWENDUNG VON IRONPDF FüR JAVA

Wie man digitale Signaturen zu PDFs in Java hinzufügt

In diesem Artikel lernen Sie, wie man eine digitale Signatur zu einem PDF mit IronPDF in einem Java-Programm hinzufügt.

IronPDF - Eine Java PDF-Bibliothek

IronPDF Java PDF Library Overview is a Java library that allows developers to create new PDF documents from scratch through Converting HTML String to PDF, Converting HTML File to PDF, Umwandlung einer HTML-Datei in PDF, Word in PDF-Umwandlung oder URL. Es hilft, PDFs leicht zu manipulieren, indem Inhalt hinzugefügt oder entfernt wird. Es bietet Sicherheits- und Digitale Signaturoptionen für das PDF-Dokument zusammen mit digitaler Signierung.

IronPDF erfordert keine anderen Drittanbieter-Bibliotheken, um seine PDF-bezogenen Aufgaben auszuführen. Es bietet auch die Möglichkeit, zwischen verschiedenen Dateiformaten zu konvertieren. Es bietet plattformübergreifende Unterstützung und ist speziell für Java, Scala und Kotlin entwickelt.

Schritte zum Hinzufügen von digitalen Signaturen zu PDF-Dokumenten in Java

Voraussetzungen

Um PDF-Dokumente digital zu signieren, sind die folgenden Voraussetzungen erforderlich:

  • Jede Java IDE (NetBeans, Eclipse, IntelliJ) installiert - Dieser Artikel wird IntelliJ verwenden. Sie können das Java Development Kit separat von den Oracle Java SE Downloads herunterladen.
  • Maven Java-Projekt für Automatisierung - Dies wird helfen, Abhängigkeiten in Ihrem Java-Programm herunterzuladen und zu verwalten. Sie können Maven von der Apache Maven Download-Seite herunterladen.
  • IronPDF Bibliothek heruntergeladen und installiert - Um IronPDF herunterzuladen und zu installieren, fügen Sie dessen Maven-Abhängigkeits-Artefakt hinzu. Sie können den folgenden Code-Schnipsel im Tag für Abhängigkeiten der pom.xml-Datei hinzufügen:
<dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>2023.2.0</version>
</dependency>
<dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>2023.2.0</version>
</dependency>
XML
  • Eine weitere erforderliche Abhängigkeit ist Slf4j-simple. Es ist optional und kann durch die folgende Abhängigkeit in der pom.xml-Datei hinzugefügt werden:

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>2.0.5</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>2.0.5</version>
    </dependency>
    XML

Wie man digitale Signaturen zu PDFs in Java hinzufügt, Abbildung 1: pom.xml-Datei pom.xml-Datei

Import Java-Pakete von IronPDF

Die folgenden Importe sind in der Hauptdatei erforderlich. Es ermöglicht die Verwendung von IronPDF-Funktionen, um eine digitale Signatur zu einem PDF-Dokument hinzuzufügen:

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.signature.Signature;
import com.ironsoftware.ironpdf.signature.SignatureManager;
import java.io.IOException;
import java.nio.file.Paths;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.signature.Signature;
import com.ironsoftware.ironpdf.signature.SignatureManager;
import java.io.IOException;
import java.nio.file.Paths;
JAVA

Nun ist alles Notwendige erledigt und bereit, um eine digitale Signatur zu PDF-Dokumenten in Java mit IronPDF hinzuzufügen.

PDF-Datei erstellen oder bestehende PDF-Datei öffnen

Um zu erfahren, wie man PDFs digital signiert, ist es notwendig, entweder ein PDF-Dokument von Grund auf neu zu erstellen oder ein bestehendes PDF-Dokument zu öffnen. This article will create a new PDF document for PDF signature using the renderHtmlAsPdf Method of the PdfDocument Class. Der Code sieht wie folgt aus:

PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Testing 2048 bit digital security</h1>");
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Testing 2048 bit digital security</h1>");
JAVA

Das PDF-Dokument ist erstellt, wird jedoch noch nicht gespeichert. Daher ist der nächste Schritt, eine digitale Signatur zu erstellen und sie dann zu diesem PDF-Dokument hinzuzufügen und es schließlich zu speichern.

Eine digitale Signatur erstellen

Sie müssen ein digitales Signaturzertifikat mit Adobe Reader erstellen, das in Java-Code verwendet wird, um PDF-Dokumente damit digital zu signieren. Sie können sich ansehen, wie man eine digitale Signatur in Adobe Reader erstellt unter Wie man eine digitale Signatur in Adobe Reader erstellt.

Öffnen Sie Adobe Reader und klicken Sie auf Bearbeiten > Einstellungen. Klicken Sie dann auf Signaturen und danach auf Identitäts- und Vertrauenszertifikate.

Wie man digitale Signaturen zu PDFs in Java hinzufügt, Abbildung 2: Die Projekteinstellungen Die Projekteinstellungen

Fügen Sie das folgende Signaturfeld hinzu, um die .pfx- oder .p12-Datei zu erstellen.

Wie man digitale Signaturen zu PDFs in Java hinzufügt, Abbildung 3: Dialogfeld für digitale ID hinzufügen Dialogfeld für digitale ID hinzufügen

Der folgende Code-Schnipsel erstellt eine neue Signatur im Java-Code unter Verwendung der .pfx-Zertifikatdatei für Windows und der .p12-Datei für Mac zusammen mit ihrem privaten Schlüssel (Passwort):

Signature signature = new Signature("Iron.pfx", "123456");
Signature signature = new Signature("Iron.pfx", "123456");
JAVA

PDF-Datei mit digitaler Signatur signieren

IronPDF hilft bei der Hinzufügung des Signaturzertifikats über die SignatureManager-Klasse. [getSignature Method](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#getSignature()) helps to get the previous signature of the PDF document, and then a new signature can be added using the Die Methode [SignPdfWithSignature](/java/object-reference/api/com/ironsoftware/ironpdf/signature/SignatureManager.html#SignPdfWithSignature(com.ironsoftware.ironpdf.signature.Signature) unter Verwendung der Signaturdatei als Argument hinzugefügt werden. Der Code sieht wie folgt aus:

SignatureManager signatureManager = pdf.getSignature();
signatureManager.SignPdfWithSignature(signature);
SignatureManager signatureManager = pdf.getSignature();
signatureManager.SignPdfWithSignature(signature);
JAVA

PDF-Signaturdatei speichern

Letztendlich speichern wir die PDF-Datei, andernfalls ist das PDF nicht signiert durch die Methode [saveAs](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#saveAs(java.lang.String) der PdfDocument-Klasse. Der Code ist einfach und wie folgt:

pdf.saveAs("signed.pdf");
pdf.saveAs("signed.pdf");
JAVA

Bei erfolgreicher Kompilierung und Ausführung des Codes wird ein PDF erzeugt, das digital signiert wurde.

Wie man digitale Signaturen zu PDFs in Java hinzufügt, Abbildung 4: Die Ausgabepdf-Datei Die Ausgabe-PDF-Datei

IronPDF bietet auch andere Signaturoptionen, die optional sind und ebenfalls für digitale Signaturen verwendet werden können. Es umfasst Signaturbilder in Form von Handschrift, computergenerierten Textbildern oder digitalisierten Bildern. Das folgende Code-Beispiel hilft Ihnen, einige zusätzliche Sicherheitsoptionen für die digitale Signatur hinzuzufügen:

signature.setSigningContact("support@ironsoftware.com");
signature.setSigningLocation("Chicago, USA");
signature.setSigningReason("To show how to sign a PDF");
BufferedImage signatureImage = ImageIO.read(new File("handwriting.png"));
WritableRaster raster = signatureImage.getRaster();
DataBufferByte data = (DataBufferByte) raster.getDataBuffer();
signature.setSignatureImage(data.getData());
signature.setSigningContact("support@ironsoftware.com");
signature.setSigningLocation("Chicago, USA");
signature.setSigningReason("To show how to sign a PDF");
BufferedImage signatureImage = ImageIO.read(new File("handwriting.png"));
WritableRaster raster = signatureImage.getRaster();
DataBufferByte data = (DataBufferByte) raster.getDataBuffer();
signature.setSignatureImage(data.getData());
JAVA

Der vollständige Code sieht wie folgt aus:

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.signature.Signature;
import com.ironsoftware.ironpdf.signature.SignatureManager;

import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.awt.image.DataBufferByte;
import java.awt.image.WritableRaster;
import java.io.File;
import java.io.IOException;

public class DigitalSignatureExample {
    public static void main(String[] args) throws IOException {

        // Step 1. Create a PDF File Doc
        PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Testing 2048 bit digital security</h1>");

        // Step 2. Create a Signature.
        Signature signature = new Signature("Iron.pfx", "123456");

        // Step 3. Sign the PDF with the PdfSignature.
        SignatureManager signatureManager = pdf.getSignature();
        signatureManager.SignPdfWithSignature(signature);

        // Step 4. The PDF is not signed until saved to file, stream, or byte array.
        pdf.saveAs("signed.pdf");
    }
}
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.signature.Signature;
import com.ironsoftware.ironpdf.signature.SignatureManager;

import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.awt.image.DataBufferByte;
import java.awt.image.WritableRaster;
import java.io.File;
import java.io.IOException;

public class DigitalSignatureExample {
    public static void main(String[] args) throws IOException {

        // Step 1. Create a PDF File Doc
        PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Testing 2048 bit digital security</h1>");

        // Step 2. Create a Signature.
        Signature signature = new Signature("Iron.pfx", "123456");

        // Step 3. Sign the PDF with the PdfSignature.
        SignatureManager signatureManager = pdf.getSignature();
        signatureManager.SignPdfWithSignature(signature);

        // Step 4. The PDF is not signed until saved to file, stream, or byte array.
        pdf.saveAs("signed.pdf");
    }
}
JAVA

Sie können sich weitere Informationen zur digitalen Signatur im PDF-Signatur-Codebeispiel ansehen. Wenn Sie mehr Sicherheit hinzufügen und sogar Metadaten bearbeiten möchten, überprüfen Sie das Codebeispiel für Sicherheit und Metadaten.

Abschluss

Dieser Artikel erklärt Schritt für Schritt, wie man digitale Signaturen zu PDF-Dokumenten mit IronPDF für Java hinzufügt.

Zuerst behandelte der Artikel die notwendigen Komponenten, die erforderlich sind, um mit PDFs in Java mit IronPDF zu arbeiten. Dann wurde ein einfaches PDF-Dokument unter Verwendung eines HTML-Strings erstellt. Es wurde eine Zertifikatdatei von Adobe Reader erstellt, die zum Signieren des ursprünglichen PDF-Dokuments verwendet wurde. IronPDF bietet eine Signature und eine SignatureManager-Klasse, die Benutzern hilft, ein Zertifikat hinzuzufügen und ein PDF mit einem Signaturfeld zu signieren.

IronPDF erleichtert Entwicklern das Ausführen von PDF-bezogenen Aufgaben mit Leichtigkeit und Geschwindigkeit. Es liefert genaue Ergebnisse mit pixelgenauen PDFs. Für eine vielseitige und weit verbreitete Programmiersprache wie Java ist IronPDF gut geeignet, um mit PDF-Dokumenten zu arbeiten, da es ebenfalls vielseitig ist und fast alle PDF-Operationen unterstützt. Darüber hinaus basiert es auf den bereits erfolgreichen .NET-Fähigkeiten.

IronPDF bietet auch eine einfache Umwandlung von verschiedenen Dateiformaten, unter Verwendung des schnellen IronPDFEngine, der speziell für Java entwickelt wurde. You can use the IronPDF library to Extract or Add Text, Load and Extract Images, Add Headers and Footers to PDFs, annotations, Render Charts and Graphs to PDFs, work with PDF Forms, and many more.

Sie können detaillierte Informationen darüber erhalten, wie Sie IronPDF verwenden, von den Java PDF Code-Beispielen.

IronPDF ist kostenlos für die individuelle Entwicklung und bietet eine kostenlose Testversion ohne Wasserzeichen, um PDF-Dokumente zu erstellen. Es kann für kommerzielle Zwecke lizenziert werden, und seine Benutzer können weitere Informationen zur Lizenz auf dieser detaillierten Lizenzierungs-Informationsseite erhalten.

Häufig gestellte Fragen

Wie kann ich eine digitale Signatur zu einem PDF in Java hinzufügen?

Sie können einer PDF-Datei in Java mit IronPDF eine digitale Signatur hinzufügen, indem Sie ein PDF-Dokument erstellen oder öffnen, eine digitale Signatur mit einer Zertifikatsdatei generieren und mithilfe der `SignatureManager`-Klasse von IronPDF die Signatur anwenden. Abschließend speichern Sie das signierte PDF-Dokument.

Was sind die Schritte, um HTML mit einer Java-Bibliothek in PDF zu konvertieren?

Um HTML mit IronPDF in Java in PDF zu konvertieren, verwenden Sie die PdfDocument.renderHtmlAsPdf-Methode. Damit können Sie HTML-Strings direkt in ein PDF-Dokument umwandeln, das anschließend mit der PdfDocument.saveAs-Methode gespeichert werden kann.

Welche Voraussetzungen sind für die Verwendung von IronPDF in einem Java-Projekt erforderlich?

Um IronPDF in einem Java-Projekt zu verwenden, benötigen Sie eine Java-IDE wie IntelliJ, ein Maven-Projekt zur Verwaltung der Abhängigkeiten und die IronPDF-Bibliothek. Zusätzlich wird für das Hinzufügen digitaler Signaturen ein digitales Signaturzertifikat benötigt.

Kann IronPDF in Java andere Dateiformate in PDFs umwandeln?

Ja, neben HTML kann IronPDF verschiedene andere Dateiformate wie Word-Dokumente und URLs in einer Java-Anwendung in PDF umwandeln.

Benötigt IronPDF Drittanbieterbibliotheken für PDF-Funktionalitäten?

Nein, IronPDF benötigt für seine grundlegenden PDF-Funktionalitäten keine Drittanbieterbibliotheken und ist somit eine eigenständige Lösung zur PDF-Erstellung und -Bearbeitung in Java.

Wie erstelle ich ein digitales Signaturzertifikat zum Signieren von PDFs?

Ein digitales Signaturzertifikat kann mit Adobe Reader erstellt werden, indem Sie zu Bearbeiten > Einstellungen > Signaturen navigieren und Identitäten und vertrauenswürdige Zertifikate verwalten.

Welche Klasse in IronPDF wird zum Verwalten digitaler Signaturen in Java verwendet?

Die SignatureManager-Klasse in IronPDF wird zum Verwalten digitaler Signaturen in Java verwendet. Sie ermöglicht es, neue Signaturen hinzuzufügen und bestehende aus einem PDF-Dokument abzurufen.

Welche zusätzlichen Optionen stehen zum digitalen Signieren mit IronPDF in Java zur Verfügung?

IronPDF in Java bietet Optionen zum Hinzufügen von Signaturbildern, zur Angabe des Signaturkontakts, des Standorts und des Grundes sowie zum Hinzufügen von handschriftlichen und digitalisierten Bildern zur digitalen Signatur.

Gibt es eine kostenlose Version von IronPDF für Java?

IronPDF bietet eine kostenlose Testversion für die individuelle Entwicklung, die ohne Wasserzeichen verwendet werden kann. Es gibt Lizenzoptionen für die kommerzielle Nutzung.

Was sind einige erweiterte Funktionen von IronPDF für Java?

IronPDF für Java umfasst Funktionen wie Text- und Bildextraktion, das Hinzufügen von Kopf- und Fußzeilen, das Rendern von Diagrammen und Grafiken sowie die Arbeit mit PDF-Formularen.

Darrius Serrant
Full-Stack-Software-Ingenieur (WebOps)

Darrius Serrant hat einen Bachelor-Abschluss in Informatik von der University of Miami und arbeitet als Full-Stack-WebOps-Marketing-Ingenieur bei Iron Software. Seit seiner Jugend vom Programmieren angezogen, sah er die Informatik als sowohl mysteriös als auch zugänglich, was es zum perfekten Medium für Kreativität und Problemlösung ...

Weiterlesen