UTILISATION D'IRONPDF FOR JAVA

Bibliothèque de l'éditeur PDF de Java (Comment faire et exemple de code)

Mise à jour septembre 1, 2024
Partager:

IronPDF est une puissante bibliothèque Java PDF pour l'édition et la création de documents PDF en Java. Il simplifie un large éventail de fonctions d'édition de PDF, telles que l'ajout de signatures, de pieds de page HTML, de filigranes et d'annotations.

Avec IronPDF, vous pouvez facilement créer des fichiers PDF par programmation, déboguer votre code en toute simplicité et déployer vos projets sur n'importe quelle plateforme ou environnement pris en charge.

L'objectif principal de la plupart des bibliothèques Java PDF est de générer des fichiers PDF de manière dynamique. Vous pouvez accomplir cette tâche avec IronPDF.

Cet article explorera certaines des fonctionnalités les plus importantes d'IronPDF et vous fournira des exemples de code et des explications. À la fin de cet article, vous aurez bien compris comment utiliser IronPDF pour éditer des PDF en Java. C'est un outil parfait pour vos besoins d'édition de PDF.

Modifier la structure du document

Manipulation de documents PDF

IronPDF facilite la gestion des PDF grâce à sa capacité à ajouter des PDF à des index spécifiques, à copier des pages en tant que plage ou individuellement, et à supprimer des pages en toute simplicité. Toutes ces tâches sont gérées de manière transparente en arrière-plan.

Ajouter des pages

import java.io.IOException;
import java.nio.file.Paths;
import com.ironsoftware.ironpdf.PdfDocument;

PdfDocument PDF = PdfDocument.fromFile(Paths.get("assets/sample.pdf"));
PdfDocument coverPagePdf = PdfDocument.renderHtmlAsPdf("<h1>Cover Page</h1><hr>");
PDF.prependPdf(coverPagePdf);
PDF.saveAs(Paths.get("report_with_cover.pdf"));
JAVA

Copier les pages

import java.io.IOException;
import java.nio.file.Paths;
import com.ironsoftware.ironpdf.PdfDocument;

PdfDocument PDF = PdfDocument.fromFile(Paths.get("assets/sample.pdf"));
PDF.copyPages(0,1).saveAs("report_highlight.pdf");
JAVA

Supprimer des pages

import java.io.IOException;
import java.nio.file.Paths;
import com.ironsoftware.ironpdf.PdfDocument;

PdfDocument PDF = PdfDocument.fromFile(Paths.get("assets/sample.pdf"));
PDF.removePages(PageSelection.lastPage()).saveAs(Paths.get("assets/lastPageRemove.pdf"));
JAVA

Joindre une page de couverture

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.headerfooter.HeaderFooterOptions;
import com.ironsoftware.ironpdf.headerfooter.TextHeaderFooter;

import java.io.IOException;
import java.nio.file.Paths;

// Create a Sample Cover Page using RenderHtmlAsPdf
PdfDocument coverPage = PdfDocument.renderHtmlAsPdf("<h1>This is a Cover Page</h1>");
PdfDocument webpage = PdfDocument.renderUrlAsPdf("https://www.nuget.org/packages/IronPdf/");

// Set the page number of the PDF document to be created to 2.
HeaderFooterOptions headerFooterOptions = new HeaderFooterOptions();
headerFooterOptions.setFirstPageNumber(1);
TextHeaderFooter footer = new TextHeaderFooter();
footer.setLeftText("");
footer.setCenterText("Page {page}");
footer.setRightText("");
webpage.addTextFooter(footer, headerFooterOptions);

// Convert a web page's content to a PDF document.
// Merge the cover page with the web page and save the new PDF to the filesystem.
try {
    PdfDocument.merge(coverPage, webpage).saveAs(Paths.get("assets/cover_page_pdf.pdf"));
} catch (IOException e) {
    throw new RuntimeException(e);
}
JAVA

En savoir plus joindre la page de couverture dans les documents PDF.

Fusionner et diviser des PDF

IronPDF for Java simplifie le processus de fusion de plusieurs PDF en un seul ou de division d'un PDF existant grâce à son API conviviale.

Joignez plusieurs documents PDF existants en un seul document PDF.

import com.ironsoftware.ironpdf.PdfDocument;  
import java.io.IOException;  
import java.nio.file.Paths;

String htmlA = "<p> [PDF_A] </p>"
        + "<p> [PDF_A] 1st Page </p>"
        + "<div style = 'page-break-after: always;' ></div>"
        + "<p> [PDF_A] 2nd Page</p>";
String htmlB = "<p> [PDF_B] </p>"
        + "<p> [PDF_B] 1st Page </p>"
        + "<div style = 'page-break-after: always;' ></div>"
        + "<p> [PDF_B] 2nd Page</p>";

PdfDocument pdfA = PdfDocument.renderHtmlAsPdf(htmlA);
PdfDocument pdfB = PdfDocument.renderHtmlAsPdf(htmlB);
PdfDocument merged = PdfDocument.merge(pdfA, pdfB);

merged.saveAs(Paths.get("assets/merged.pdf"));
JAVA

Fractionner un PDF et extraire des pages

import com.ironsoftware.ironpdf.PdfDocument;  
import java.io.IOException;  
import java.nio.file.Paths;

PdfDocument PDF = PdfDocument.fromFile(Paths.get("assets/sample.pdf"));
PdfDocument copied = PDF.copyPage(0);
copied.saveAs("assets/Split.pdf");
JAVA

Définir la taille personnalisée des documents PDF

IronPDF permet aux développeurs de créer des documents PDF de dimensions non standard, au-delà du format A4 classique (8½ par 11 pouces ou 21,59 par 27,94 cm).

import com.ironsoftware.ironpdf.*;  
import com.ironsoftware.ironpdf.render.*;  
import java.io.IOException;  
import java.nio.file.Paths;

String html = "<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>";

ChromePdfRenderOptions renderOptions = new ChromePdfRenderOptions();
renderOptions.setPaperSize(PaperSize.Custom);

/*
* Setting page sizes using different measuring units:
* 1. setCustomPaperWidth( width ) / setCustomPaperHeight( height ): for inches
* 2. setCustomPaperSizeInCentimeters( width, height ): for centimeters.
* 3. setCustomPaperSizeInMillimeters( width, height ): for millimeters
* 4. setCustomPaperSizeInPixelsOrPoints( width, height ): for pixels/points
* */
renderOptions.setCustomPaperSizeInCentimeters(13.97, 13.97);

PdfDocument.renderHtmlAsPdf(html, renderOptions).saveAs(Paths.get("assets/CustomPaperSize.pdf"));
JAVA

Voici d'autres astuces concernant la taille personnalisée des PDF.

Définir l'orientation du PDF

IronPDF for Java permet de modifier l'orientation des pages dans les PDF nouveaux et existants. Par défaut, les nouveaux PDFs créés avec IronPDF sont définis en orientation portrait, mais les développeurs peuvent le changer en utilisant une ChromePdfRenderOptions (options de rendu) instance lors de la conversion de contenu (tels que HTML, RTF et URL) en PDF.

import com.ironsoftware.ironpdf.PdfDocument;  
import com.ironsoftware.ironpdf.edit.PageSelection;  
import com.ironsoftware.ironpdf.page.PageRotation;  
import com.ironsoftware.ironpdf.render.*;  
import java.io.IOException;  
import java.nio.file.Paths;

// Get the orientation of the first page of the existing PDF document.  
PageRotation firstPageRotation = existingPdf.getPagesInfo().get(0).getPageRotation();  
System.out.println(firstPageRotation);  

// Rotate the first page of the document only 90 degrees clockwise.  
existingPdf.rotatePage(PageRotation.CLOCKWISE_90, PageSelection.firstPage());  

// Rotate all pages of the document clockwise.  
existingPdf.rotateAllPages(PageRotation.CLOCKWISE_270);  

existingPdf.saveAs(Paths.get("assets/ExistingPdfRotated.pdf"));
JAVA

Si vous souhaitez obtenir plus d'informations, vous pouvez visiter le site web d'IronPDF - définir l'orientation du PDF.

Définir des marges personnalisées pour le PDF

IronPDF crée de nouveaux PDF avec une marge par défaut de 25 mm sur tous les côtés (en haut, en bas, à gauche, à droite). Cependant, les développeurs peuvent personnaliser chaque marge avec des mesures spécifiques pour répondre aux exigences de conception à l'aide d'IronPDF.

import com.ironsoftware.ironpdf.PdfDocument;  
import com.ironsoftware.ironpdf.render.ChromePdfRenderOptions;  
import java.io.IOException;  
import java.nio.file.Paths;

// Set Margins (in millimeters)  
ChromePdfRenderOptions renderOptions = new ChromePdfRenderOptions();  
renderOptions.setMarginTop(40);  
renderOptions.setMarginLeft(20);  
renderOptions.setMarginRight(20);  
renderOptions.setMarginBottom(40);  

PdfDocument.renderHtmlFileAsPdf("assets/wikipedia.html", renderOptions).saveAs(Paths.get("assets/MyContent.pdf"));
JAVA

Visitez le site web d'IronPDF pour en savoir plus sur définition de marges personnalisées pour les documents PDF.

Convertir des documents PDF en images

IronPDF peut exporter des pages d'un fichier PDF chargé, un contenu source converti ou un PDF modifié avec des en-têtes, des pieds de page, des marges, etc. en images qui peuvent être enregistrées dans un système de fichiers, stockées dans une base de données ou transmises sur des réseaux.

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.image.ToImageOptions;

import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.nio.file.Paths;
import java.util.List;

PdfDocument pdf = PdfDocument.fromFile(Paths.get("assets/composite.pdf"));

// Extract all the pages from the PDF file.
List<BufferedImage> extractedImages = pdf.toBufferedImages();

// With the ToImageOptions object, specify maximum image dimensions for each
// extracted image, as well as their DPI
ToImageOptions rasterOptions = new ToImageOptions();
rasterOptions.setImageMaxHeight(100);
rasterOptions.setImageMaxWidth(100);

// Call the toBufferedImage method along with a PageSelection object to choose the pages from which to
// extract the images
//
// Available PageSelection methods include: allPages, lastPage, firstPage, singlePage(int pageIndex),
// and pageRange(int startingPage, int endingPage)
List<BufferedImage> sizedExtractedImages = pdf.toBufferedImages(rasterOptions, PageSelection.allPages());

// Save all the extracted images to a file location
int i = 1;
for (BufferedImage extractedImage : sizedExtractedImages) {
    String fileName = "assets/images/" + i++ + ".png";
    ImageIO.write(extractedImage, "PNG", new File(fileName));
}
JAVA

Ajouter un arrière-plan et un premier plan

IronPDF fournit addBackgroundPdf et addForegroundPdf méthodes pour ajouter des éléments d'arrière-plan ou de premier plan spécifiques aux PDF. Ces méthodes permettent aux développeurs d'incorporer le contenu d'un PDF à l'arrière-plan ou à l'avant-plan d'un autre PDF, ce qui est efficace pour générer des collections de PDF basées sur un modèle de conception commun.

Ajouter un PDF en arrière-plan

import com.ironsoftware.ironpdf.*;  
import java.io.IOException;  
import java.nio.file.Paths;

// Load background PDFs from the filesystem (or create them programmatically)  
PdfDocument backgroundPdf = PdfDocument.fromFile(Paths.get("assets/MyBackground.pdf"));  

// Render content (HTML, URL, etc) as a PDF Document  
PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://www.nuget.org/packages/IronPdf");  

// Add the background PDFs to the newly-rendered document.  
pdf.addBackgroundPdf(backgroundPdf);  

pdf.saveAs(Paths.get("assets/BackgroundPdf.pdf"));
JAVA

Ajouter le PDF en avant-plan

import com.ironsoftware.ironpdf.*;  
import java.io.IOException;  
import java.nio.file.Paths;

PdfDocument foregroundPdf = PdfDocument.fromFile(Paths.get("assets/MyForeground.pdf"));  
PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://www.nuget.org/packages/IronPdf");  
pdf.addForegroundPdf(foregroundPdf);  

pdf.saveAs(Paths.get("assets/BackgroundForegroundPdf.pdf"));
JAVA

Modifier les propriétés du document

Ajouter et utiliser des métadonnées PDF

IronPDF offre la possibilité de modifier les métadonnées du PDF et des fonctions de sécurité, notamment la lecture seule, l'impossibilité d'imprimer, la protection par mot de passe et le cryptage des PDF. Dans IronPDF for Java, le MetadataManager peut être utilisé pour accéder aux métadonnées d'un PDF et les modifier. La classe MetadataManager fournit un accès direct au contenu des métadonnées et permet aux développeurs de lire et de modifier facilement les propriétés communes des métadonnées par le biais de getters et setters portant le même nom.

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.metadata.MetadataManager;
import com.ironsoftware.ironpdf.security.PdfPrintSecurity;
import com.ironsoftware.ironpdf.security.SecurityOptions;
import com.ironsoftware.ironpdf.security.SecurityManager;

import java.io.IOException;
import java.nio.file.Paths;
import java.util.Date;

// Open an encrypted file (or create a new one from HTML)
PdfDocument pdf = PdfDocument.fromFile(Paths.get("assets/encrypted.pdf"), "password");

// Edit file metadata
MetadataManager metadata = pdf.getMetadata();
metadata.setAuthor("Satoshi Nakamoto");
metadata.setKeywords("SEO, Friendly");
metadata.setModifiedDate(new Date().toString());

// Edit file security settings
// The code below makes the PDF read only and disallows users to copy, paste, and print
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setAllowUserCopyPasteContent(false);
securityOptions.setAllowUserAnnotations(false);
securityOptions.setAllowUserPrinting(PdfPrintSecurity.FULL_PRINT_RIGHTS);
securityOptions.setAllowUserFormData(false);
securityOptions.setOwnerPassword("top-secret");
securityOptions.setUserPassword("sharable");

// Change or set the document encryption password
SecurityManager securityManager = pdf.getSecurity();
securityManager.removePasswordsAndEncryption();
securityManager.makePdfDocumentReadOnly("secret-key");

securityManager.setSecurityOptions(securityOptions);
pdf.saveAs(Paths.get("assets/secured.pdf"));
JAVA

Signatures numériques

IronPDF for Java permet la signature sécurisée de fichiers PDF nouveaux ou existants à l'aide de certificats numériques X509Certificate2 au format .pfx ou .p12. En signant numériquement un PDF, l'authenticité du fichier est garantie et il ne peut être modifié sans une validation adéquate du certificat. Cela renforce la fiabilité du document.

Si vous cherchez un moyen gratuit de générer un certificat de signature, Adobe Reader est là pour vous aider. Il suffit de suivre les instructions décrites dans le Tutoriel Adobe Digital ID.

import java.io.File;
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;

PdfDocument PDF = PdfDocument.fromFile(Paths.get("assets/sample.pdf"));

File path = new File("assets/Ironpdf.pfx");
byte [] certificate = new byte [(int)path.length()];

Signature signature = new Signature(certificate,"1234");

SignatureManager manager = PDF.getSignature();

manager.SignPdfWithSignature(signature);
JAVA

Compression des PDF

IronPDF réduit la taille des fichiers PDF grâce à son compresserImages méthode dans le PdfDocument classe, facilitant la compression des PDF incluant des images de grande taille. Cette optimisation permet de réaliser des économies significatives en termes d'espace de stockage et de coûts lors de la transmission de fichiers PDF par courrier électronique ou par d'autres canaux de communication.

import com.ironsoftware.ironpdf.*;

import java.io.IOException;
import java.nio.file.Paths;

PdfDocument pdf = PdfDocument.fromFile(Paths.get("assets/document.pdf"));  

// Valid image compression values range from 1 to 100, where 100 represents 100% of the  
// original image quality.  
pdf.compressImages(60);  
pdf.saveAs(Paths.get("assets/document_compressed.pdf"));  

// The second, optional parameter can scale down the image resolution according to its visible  
// size in the PDF document. Note that this may cause distortion with some image configurations  
pdf.compressImages(90, true);  
pdf.saveAs(Paths.get("assets/document_scaled_compressed.pdf"));
JAVA

Édition du contenu du PDF

Ajouter des en-têtes et des pieds de page

IronPDF offre la possibilité de ajouter des en-têtes et des pieds de page HTML personnalisés aux PDFs en utilisant les ChromePdfRenderOptions et HtmlHeaderFooter (Pied de page) classes. IronPDF permet des en-têtes et des pieds de page personnalisés à ajouter aux PDF via le TexteEnTêtePiedDePage classe, qui permet de spécifier du texte pour les régions gauche, droite ou centrale de l'en-tête/pied de page. Cela inclut l'utilisation de balises de modélisation intégrées telles que {date}, {temps}et {page}, ou tout autre texte personnalisé souhaité.

En-tête et pied de page HTML

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.headerfooter.HtmlHeaderFooter;

import java.io.IOException;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;

PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://ironpdf.com");
// Build a footer using HTML
// Merge Fields are: {page} {total-pages} {url} {date} {time} {html-title} & {pdf-title}
HtmlHeaderFooter footer = new HtmlHeaderFooter();
footer.setMaxHeight(15); // millimeters
footer.setHtmlFragment("<center><i>{page} of {total-pages}</i></center>");
footer.setDrawDividerLine(true);
pdf.addHtmlFooter(footer);
List<PdfDocument> pdfs = new ArrayList<>();

// Build a header using an image asset
// Note the use of BaseUrl to set a relative path to the assets
HtmlHeaderFooter header = new HtmlHeaderFooter();
header.setMaxHeight(20); // millimeters
header.setHtmlFragment("<img src=\"logo.png\" />");
header.setBaseUrl("./assets/");
pdf.addHtmlHeader(header);
try {
    pdf.saveAs(Paths.get("assets/html_headers_footers.pdf"));
} catch (IOException e) {
    throw new RuntimeException(e);
}
JAVA

Texte de l'en-tête et du pied de page

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.font.FontTypes;
import com.ironsoftware.ironpdf.headerfooter.TextHeaderFooter;
import com.ironsoftware.ironpdf.headerfooter.HeaderFooterOptions;

import java.io.IOException;
import java.nio.file.Paths;

// Initialize HeaderFooterOptions object.
HeaderFooterOptions options = new HeaderFooterOptions();
PdfDocument pdf = PdfDocument.renderUrlAsPdf("http://www.google.com");

// Add a header to every page easily
// Mergeable fields are:
// {page} {total-pages} {url} {date} {time} {html-title} & {pdf-title}
options.setFirstPageNumber(1); // use 2 if a coverpage  will be appended
TextHeaderFooter textHeader = new TextHeaderFooter();
textHeader.setDrawDividerLine(true);
textHeader.setCenterText("{url}");
textHeader.setFont(FontTypes.getHelvetica());
textHeader.setFontSize(12);
pdf.addTextHeader(textHeader, options);

// Add a footer too
TextHeaderFooter textFooter = new TextHeaderFooter();
textFooter.setDrawDividerLine(true);
textFooter.setFont(FontTypes.getArial());
textFooter.setFontSize(10);
textFooter.setLeftText("{date} {time}");
textFooter.setRightText("{page} of {total-pages}");
pdf.addTextFooter(textFooter, options);

try {
    pdf.saveAs(Paths.get("assets/text_headers_footers.pdf"));
} catch (IOException e) {
    System.out.println("Failed to save PDF");
    throw new RuntimeException(e);
}
JAVA

Signets

Avec la GestionnaireDeFavoris, les développeurs peuvent créer une structure hiérarchique de les signets dans un PDFpermettant aux utilisateurs de naviguer facilement entre les différentes sections du document. Pour ajouter un nouveau signet, les développeurs peuvent utiliser la méthode add, en spécifiant le titre et le numéro de page du signet. Les signets peuvent également être imbriqués dans d'autres signets pour créer une structure plus organisée.

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.bookmark.Bookmark;
import com.ironsoftware.ironpdf.bookmark.BookmarkManager;

import java.io.IOException;
import java.nio.file.Paths;
import java.util.List;

// Load an existing PDF from the file system (or create a new one from HTML)
PdfDocument pdf = PdfDocument.fromFile(Paths.get("assets/book.pdf"));

// Add top-level bookmarks to pages of the PDF using their page indices
BookmarkManager bookmarks = pdf.getBookmark();
bookmarks.addBookMarkAtEnd("Author's Note", 2);
bookmarks.addBookMarkAtEnd("Table of Contents", 3);
bookmarks.addBookMarkAtEnd("Summary", 10);
bookmarks.addBookMarkAtEnd("References", 12);

// Retrieve a reference to the Summary bookmark so that we can add a sublist of bookmarks to it.
List<Bookmark> bookmarkList = bookmarks.getBookmarks();
Bookmark bookmark = bookmarkList.get(2);
bookmark.AddChildBookmark("Conclusion", 11);

// Save the PDF to the filesystem
pdf.saveAs(Paths.get("assets/bookmarked.pdf"));
JAVA

Ajouter et modifier des annotations

IronPDF peut ajouter annotations de pages spécifiques dans le style "notes autocollantes" d'un PDF en utilisant le AnnotationManager et AnnotationOptions classes. Les développeurs peuvent créer des annotations basées sur le texte en fournissant du texte et des (x,y) fournir les coordonnées comme arguments au constructeur AnnotationOptions, puis utiliser le addTextAnnotation méthode de AnnotationManager pour ajouter l'annotation à la page souhaitée.

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.annotation.AnnotationIcon;
import com.ironsoftware.ironpdf.annotation.AnnotationManager;
import com.ironsoftware.ironpdf.annotation.AnnotationOptions;

import java.io.IOException;
import java.nio.file.Paths;

// Create a new PDF or load an existing one from the filesystem
PdfDocument pdf = PdfDocument.fromFile(Paths.get("assets/example.pdf"));

// Create an annotation to be placed at a specific location on a page.
AnnotationOptions annotation = new AnnotationOptions(
        "This is a major title",                            // Title of the annotation
        "This is the long 'sticky note' comment content...",    // Content of the annotation
        150,                                                    // x-axis coordinate location
        250                                                     // y-axis coordinate location
);
annotation.setIcon(AnnotationIcon.HELP);
annotation.setOpacity(0.9);
annotation.setPrintable(false);
annotation.setHidden(false);
annotation.setOpen(true);
annotation.setReadonly(true);
annotation.setRotateable(true);

// Add the annotation to a specific page of the PDF
AnnotationManager annotationManager = pdf.getAnnotation();
annotationManager.addTextAnnotation(annotation, 0);

// Save the PDF with the modifications
pdf.saveAs(Paths.get("assets/annotated.pdf"));
JAVA

Estampillage et filigrane

IronPDF for Java dispose d'une API puissante qui offre des possibilités étendues d'estampillage et de filigrane des PDF. Grâce à son interface conviviale, les développeurs peuvent rapidement ajouter des images et des tampons HTML à leurs PDF en toute simplicité. Que vous ayez besoin d'ajouter un logo d'entreprise, un avis de confidentialité ou un identifiant unique, IronPDF est là pour vous aider. L'API permet d'ajouter facilement des tampons accrocheurs à vos PDF, leur donnant ainsi une touche professionnelle et personnalisée.

Estampiller du texte sur un PDF

import java.io.IOException;
import java.nio.file.Paths;

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.stamp.TextStamper;
import com.ironsoftware.ironpdf.stamp.VerticalAlignment;

PdfDocument pdf = PdfDocument.fromFile(Paths.get("assets/sample.pdf"));
TextStamper stamper1 = new TextStamper();
stamper1.setText("Hello World! Stamp One Here!");
stamper1.setFontFamily("Bungee Spice");
stamper1.setUseGoogleFont(true);

stamper1.setFontSize(100);
stamper1.setBold(true);
stamper1.setItalic(false);
stamper1.setVerticalAlignment(VerticalAlignment.TOP);

pdf.applyStamp(stamper1);
JAVA

Apposer une image sur un PDF

import java.io.IOException;
import java.nio.file.Paths;

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.stamp.ImageStamper;

PdfDocument PDF = PdfDocument.fromFile(Paths.get("assets/sample.pdf"));
ImageStamper imageStamper = new ImageStamper(Paths.get("assets/logo.png"));
// Apply to every page, one page, or some pages
PDF.applyStamp(imageStamper);
PDF.applyStamp(imageStamper, PageSelection.singlePage(2));
PDF.applyStamp(imageStamper, PageSelection.pageRange(0, 2));
JAVA

Apposer un code-barres sur un PDF

import java.io.IOException;
import java.nio.file.Paths;

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.stamp.BarcodeEncoding;
import com.ironsoftware.ironpdf.stamp.BarcodeStamper;
import com.ironsoftware.ironpdf.stamp.HorizontalAlignment;
import com.ironsoftware.ironpdf.stamp.VerticalAlignment;

PdfDocument PDF = PdfDocument.fromFile(Paths.get("assets/sample.pdf"));
BarcodeStamper barcodeStamp = new BarcodeStamper("IronPDF", BarcodeEncoding.Code39);

barcodeStamp.setHorizontalAlignment(HorizontalAlignment.LEFT);
barcodeStamp.setVerticalAlignment(VerticalAlignment.BOTTOM);

PDF.applyStamp(barcodeStamp);
JAVA

Apposer un code QR sur un PDF

import java.io.IOException;
import java.nio.file.Paths;

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.stamp.BarcodeEncoding;
import com.ironsoftware.ironpdf.stamp.BarcodeStamper;
import com.ironsoftware.ironpdf.stamp.HorizontalAlignment;
import com.ironsoftware.ironpdf.stamp.VerticalAlignment;

PdfDocument PDF = PdfDocument.fromFile(Paths.get("assets/sample.pdf"));
BarcodeStamper QRStamp = new BarcodeStamper("IronPDF", BarcodeEncoding.QRCode);
QRStamp.setHeight(50);
QRStamp.setWidth(50);
QRStamp.setHorizontalAlignment(HorizontalAlignment.LEFT);
QRStamp.setVerticalAlignment(VerticalAlignment.BOTTOM);
PDF.applyStamp(QRStamp);
JAVA

Ajouter un filigrane à un PDF

import java.io.IOException;
import java.nio.file.Paths;

import com.ironsoftware.ironpdf.PdfDocument;

PdfDocument PDF = PdfDocument.fromFile(Paths.get("assets/sample.pdf"));
String html = "<h1> Example Title <h1/>";
int watermarkOpacity = 30;
PDF.applyWatermark(html, watermarkOpacity);
JAVA

Utilisation de formulaires dans les PDF

IronPDF Java offre aux développeurs un moyen simple et efficace de définir et d'extraire des valeurs de champs de texte de formulaire dans un document PDF. L'utilisation de la FormManager Classe, les développeurs peuvent simplement appeler la setFieldValue méthode et fournissez le nom du champ de texte souhaité et la valeur à remplir.

Pour récupérer la valeur d'un champ de formulaire, le développeur peut accéder directement au champ via la collection d'objets FormManager, en utilisant le nom ou l'index correspondant. Ce niveau de contrôle des champs de formulaire permet aux développeurs de travailler facilement avec des formulaires PDF dynamiques et interactifs.

Créer et modifier des formulaires

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.render.ChromePdfRenderOptions;

import java.io.IOException;
import java.nio.file.*;

// #1 Use Case: Create a PDF Form from HTML Form Markup
Path outputLocation = Paths.get("assets/BasicForm.pdf");
String formHTML = "<html>"
        + "<body>"
        + "<h2>Editable PDF  Form</h2>"
        + "<form>"
        + "First name: <br> <input type='text' name='firstname' value=''> <br>"
        + "Last name: <br> <input type='text' name='lastname' value=''>"
        + "</form>"
        + "</body>"
        + "</html>";

ChromePdfRenderOptions renderOptions = new ChromePdfRenderOptions();
renderOptions.setCreatePdfFormsFromHtml(true);
PdfDocument.renderHtmlAsPdf(formHTML, renderOptions).saveAs(outputLocation);

// #2 Use Case: Writing Values to the PDF Form
PdfDocument form = PdfDocument.fromFile(outputLocation);

// Set the value of the firstname input field.
form.getForm().setFieldValue("firstname", "Minnie");

// Set the value of the lastname input field.
form.getForm().setFieldValue("lastname", "Mouse");

// Save the changes to the PDF Form.
form.saveAs(Paths.get("assets/BasicForm_Filled.pdf"));
JAVA

Remplir les formulaires existants

import com.ironsoftware.ironpdf.PdfDocument;

import java.io.IOException;
import java.nio.file.*;

PdfDocument form = PdfDocument.fromFile("assets/pdfform.pdf");

// Set the value of the firstname input field.
form.getForm().setFieldValue("firstname", "Minnie");

// Set the value of the lastname input field.
form.getForm().setFieldValue("lastname", "Mouse");

// Save the changes to the PDF Form.
form.saveAs(Paths.get("assets/BasicForm_Filled.pdf"));
JAVA

Envoyer le PDF pour impression

La méthode d'impression d'IronPDF permet aux développeurs de facilement intégrer l'impression de PDF dans leurs applications. En appelant simplement le [imprimer](/ja va/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#print()) la méthode ouvrira la boîte de dialogue d'impression du système d'exploitation, offrant aux utilisateurs la possibilité de régler les paramètres d'impression tels que l'imprimante, la taille du papier et le nombre de copies.

import com.ironsoftware.ironpdf.PdfDocument;

import java.awt.print.PrinterException;

PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Created with IronPDF!</h1>");
try {
    pdf.print();
} catch (PrinterException exception) {
    System.out.println("Failed to print PDF");
    exception.printStackTrace();
}
JAVA

Conclusion

IronPDF est une bibliothèque PDF complète pour Java qui offre un large éventail de fonctionnalités pour la création, l'édition et la manipulation de documents PDF. Il dispose de méthodes d'extraction robustes pour le texte et les images, ce qui permet aux développeurs d'accéder au contenu des PDF et de le traiter. IronPDF offre également une grande souplesse dans la personnalisation des métadonnées PDF et des paramètres de sécurité, comme la mise en lecture seule ou la protection par mot de passe d'un PDF. En outre, il fournit une méthode pour compresser les PDF, réduire la taille des fichiers et améliorer l'efficacité de leur transmission.

La bibliothèque permet d'ajouter des en-têtes et des pieds de page personnalisés, ainsi que des annotations, à un document PDF. La fonction de mise en signet permet aux développeurs d'ajouter des signets pour faciliter la navigation au sein d'un PDF.

IronPDF offre un service de clé d'essai gratuite pour permettre aux utilisateurs de tester ses fonctionnalités et capacités avant de faire un achat. Les Licence IronPDF for Java commence à $749, fournissant une solution rentable pour les entreprises et les particuliers qui cherchent à sécuriser et à gérer leurs fichiers PDF.

< PRÉCÉDENT
Comment fusionner deux fichiers PDF à l'aide de Java
SUIVANT >
Générateur de PDF Java (Tutoriel d'exemple de code)

Prêt à commencer ? Version : 2024.9 vient de paraître

Téléchargement gratuit de Maven Voir les licences > ;