
Comment ajouter des signatures numériques aux PDFs en Java
Dans cet article, vous apprendrez comment ajouter une signature numérique à un PDF avec IronPDF dans un programme Java.
IronPDF - Une bibliothèque PDF Java
Aperçu de la bibliothèque PDF Java IronPDF est une bibliothèque Java qui permet aux développeurs de créer de nouveaux documents PDF à partir de zéro en convertissant une chaîne HTML en PDF, convertissant un fichier HTML en PDF, convertissant Word en PDF ou via une URL. Il aide à manipuler facilement les PDF en ajoutant ou en supprimant du contenu. Il offre des options de sécurité et de signature numérique pour le document PDF ainsi que la signature numérique.
IronPDF ne nécessite aucune autre bibliothèque tierce pour effectuer ses tâches liées aux PDF. Il offre également la possibilité de convertir entre différents formats de fichiers. Il offre une prise en charge multiplateforme et est spécialement conçu pour Java, Scala et Kotlin.
Étapes pour ajouter des signatures numériques à un document PDF en Java
Prérequis
Pour signer numériquement des documents PDF, les prérequis suivants sont nécessaires :
- Un IDE Java (NetBeans, Eclipse, IntelliJ) installé - Cet article utilisera IntelliJ. Vous pouvez télécharger séparément le Kit de Développement Java à partir des téléchargements Oracle Java SE.
- Projet Java Maven pour l'automatisation - Cela aidera à télécharger et gérer les dépendances dans votre programme Java. Vous pouvez télécharger Maven depuis la page de téléchargement Apache Maven.
- Bibliothèque IronPDF téléchargée et installée - Pour télécharger et installer IronPDF, incluez son artefact de dépendance Maven. Vous pouvez ajouter le fragment de code suivant dans le tag des dépendances du fichier
pom.xml:
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>2023.2.0</version>
</dependency>
-
Une autre dépendance requise est Slf4j-simple. C'est optionnel et peut être ajouté en utilisant la dépendance suivante dans le fichier
pom.xml:<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>2.0.5</version> </dependency>XML
Comment ajouter des signatures numériques aux PDF en Java ? Figure 1 : fichier pom.xml fichier pom.xml
Importer des paquets Java IronPDF
Les imports suivants sont requis dans le fichier principal. Il permet d'utiliser les fonctions IronPDF pour ajouter une signature numérique à un document PDF :
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;
Maintenant, tout ce qui est requis est fait et prêt à ajouter une signature numérique aux documents PDF en Java avec IronPDF.
Créer un fichier PDF ou ouvrir un fichier PDF existant
Pour apprendre comment signer numériquement des PDF, il est nécessaire soit de créer un document PDF à partir de zéro, soit d'ouvrir un document PDF existant. This article will create a new PDF document for PDF signature using the [renderHtmlAsPdf Method](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#renderHtmlAsPdf(java.lang.String) of the PdfDocument Class. Le code se présente comme suit :
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Testing 2048 bit digital security</h1>");
Le document PDF est créé mais pas encore enregistré. Ainsi, la prochaine étape consiste à créer une signature numérique et ensuite à l'ajouter à ce document PDF, puis finalement à l'enregistrer.
Créer une signature numérique
Vous devrez créer un certificat de signature numérique à l'aide d'Adobe Reader, qui sera utilisé dans le code Java pour signer numériquement des documents PDF avec ces détails. Vous pouvez consulter comment créer une signature numérique dans Adobe Reader.
Ouvrez Adobe Reader et cliquez sur Modifier > Préférences. Puis cliquez sur Signatures et plus sur Identités et Certificats de confiance.
Comment ajouter des signatures numériques aux PDF en Java, Figure 2 : Les préférences du projet Les préférences du projet
Ajoutez le champ de signature suivant pour faire un doc de fichier .pfx ou .p12.
Comment ajouter des signatures numériques aux PDF en Java ? Figure 3 : Boîte de dialogue " Ajouter un identifiant numérique ". Boîte de dialogue Ajouter une ID numérique
L'exemple de code suivant créera une nouvelle signature dans le code Java en utilisant le fichier de certificat .pfx pour Windows et le fichier .p12 pour Mac avec sa clé privée (mot de passe) :
Signature signature = new Signature("Iron.pfx", "123456");
Signer un fichier PDF avec une signature numérique
IronPDF aide à ajouter le certificat de signature en utilisant la classe SignatureManager. getSignature Method aide à obtenir la signature précédente du document PDF, et ensuite une nouvelle signature peut être ajoutée en utilisant le [SignPdfWithSignature Method](/java/object-reference/api/com/ironsoftware/ironpdf/signature/SignatureManager.html#SignPdfWithSignature(com.ironsoftware.ironpdf.signature.Signature) avec le fichier de signature en argument. Le code se présente comme suit :
SignatureManager signatureManager = pdf.getSignature();
signatureManager.SignPdfWithSignature(signature);
Enregistrer le fichier de signature PDF
Enfin, enregistrons le fichier PDF ; sinon, le PDF n'est pas signé en utilisant le [saveAs Method](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#saveAs(java.lang.String) de la classe PdfDocument. Le code est simple et se présente comme suit :
pdf.saveAs("signed.pdf");
À la compilation et à l'exécution réussies du code, la sortie produit un PDF qui a été signé numériquement.
Comment ajouter des signatures numériques aux PDF en Java ? Figure 4 : Le fichier PDF de sortie. Le fichier PDF de sortie
IronPDF offre également d'autres options de signature, qui sont optionnelles et peuvent également être utilisées pour les signatures numériques. Il inclut les images de signature sous forme d'écriture manuscrite, d'images de texte générées par ordinateur, ou d'images numérisées. L'exemple de code suivant vous aide à ajouter quelques options de sécurité supplémentaires pour la signature numérique :
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());
Le code complet se présente comme suit :
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");
}
}
Vous pouvez vérifier plus d'informations sur la Signature Numérique depuis l'exemple de code de signatures PDF. Si vous voulez ajouter plus de sécurité et même éditer les métadonnées, alors consultez l'exemple de code de sécurité et de métadonnées.
Conclusion
Cet article a expliqué étape par étape comment ajouter des signatures numériques aux documents PDF avec IronPDF for Java.
Premièrement, l'article a couvert les composants nécessaires pour travailler avec les PDF en Java avec IronPDF. Puis a créé un simple document PDF en utilisant une chaîne HTML. Un fichier de certificat a été créé depuis Adobe Reader, qui a été utilisé pour signer le document PDF original. IronPDF fournit une Signature et une classe SignatureManager, qui aide les utilisateurs à ajouter un certificat et à signer le PDF avec un champ de signature.
IronPDF facilite aux développeurs l'exécution des tâches liées aux PDF avec facilité et rapidité. Il fournit des résultats précis avec des PDF au rendu parfait. Pour un langage de programmation polyvalent et largement utilisé comme Java, IronPDF est bien adapté pour travailler avec les documents PDF car il est également polyvalent et prend en charge presque toutes les opérations PDF. De plus, il est construit sur les capacités déjà réussies de .NET.
IronPDF fournit également une conversion facile à partir de différents formats de fichiers, en utilisant le IronPDFEngine rapide conçu spécialement pour Java. Vous pouvez utiliser la bibliothèque IronPDF pour extraire ou ajouter du texte, charger et extraire des images, ajouter des en-têtes et des pieds de page aux PDF, des annotations, rendre des graphiques et des cartes en PDF, travailler avec des formulaires PDF, et bien plus encore.
Vous pouvez obtenir des informations détaillées sur l'utilisation de IronPDF depuis les pages d'exemples de code Java PDF.
IronPDF est gratuit pour le développement individuel et offre un essai gratuit sans filigrane pour générer des documents PDF. Il peut être licencié pour un usage commercial, et ses utilisateurs peuvent obtenir plus d'informations sur la licence sur cette page d'informations détaillées sur la licence.

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes et créer des manuels bien structurés et visuellement attrayants.
Articles connexes


