# Comment ajouter un arrière-plan et superposer un premier plan sur les PDF en Java
IronPDF for Java fournit des méthodes `addBackgroundPdf` et `addForegroundPdf` qui placent du contenu PDF supplémentaire soit derrière, soit sur le dessus des pages existantes. Ces méthodes couvrent l'ensemble des scénarios pratiques de superposition : en-têtes, remplissages de couleur, filigranes, tampons d'approbation, et indicateurs de révision. La bibliothèque rend HTML en PDF en interne, donc toute expression CSS valide (dégradés, images, typographie) peut devenir une couche d'arrière-plan ou de premier plan sans manipulation manuelle du flux PDF.
Ajoutez IronPDF à votre projet en déclarant la dépendance dans `pom.xml` via [Maven Central](https://central.sonatype.com/artifact/com.ironsoftware/ironpdf), puis [activez votre clé de licence](https://ironpdf.com/java/get-started/license-keys/) avant d'effectuer des appels API.
*as-heading:2(Démarrage rapide : Ajouter un arrière-plan et un premier plan aux PDF)*
```java
:title=Quickstart
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/quickstart.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.edit.PageSelection;
import java.nio.file.Paths;
// Load the target PDF
PdfDocument pdf = PdfDocument.fromFile(Paths.get("document.pdf"));
// Render a background from HTML and apply it to all pages
PdfDocument background = PdfDocument.renderHtmlAsPdf("<body style='background-color: #f0f0f0;'></body>");
pdf.addBackgroundPdf(background);
// Render a foreground overlay and apply it to all pages
PdfDocument foreground = PdfDocument.renderHtmlAsPdf("<h1 style='opacity: 0.3;'>DRAFT</h1>");
pdf.addForegroundPdf(foreground);
pdf.saveAs(Paths.get("output.pdf"));
```
<div class="hsg-featured-snippet">
<h3>Flux de travail minimal (5 étapes)</h3>
<ol>
<li><a class="js-modal-open" data-modal-id="download-modal" href="#download-modal">Installez la bibliothèque IronPDF Java via Maven</a></li>
<li>Chargez le PDF cible avec <code>PdfDocument.fromFile()</code></li>
<li>Rendez ou importez le PDF d'arrière-plan ou de premier plan</li>
<li>Appelez <code>addBackgroundPdf</code> pour appliquer le contenu derrière les pages existantes</li>
<li>Appelez <code>addForegroundPdf</code> pour superposer le contenu sur les pages existantes</li>
</ol>
</div>
## Comment ajouter un arrière-plan à un PDF ?
Pour ajouter un arrière-plan à un PDF existant, appelez `addBackgroundPdf` sur une instance `PdfDocument` et passez un deuxième `PdfDocument` comme source de l'arrière-plan. La méthode compose l'arrière-plan sous chaque page du document cible. Avant d'exécuter le code, [configurez IronPDF avec votre clé de licence](https://ironpdf.com/java/get-started/license-keys/) pour activer la bibliothèque.
```java
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/add-background.java
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import java.nio.file.Paths;
// Activate the license
License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");
// Load the target PDF
PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));
// Render a background from an HTML color definition
PdfDocument background = PdfDocument.renderHtmlAsPdf("<body style='background-color: cyan;'></body>");
// Apply the background to all pages
pdf.addBackgroundPdf(background);
pdf.saveAs(Paths.get("addBackground.pdf"));
```
L'appel `renderHtmlAsPdf` convertit tout HTML et CSS valides en une page PDF qu'IronPDF compose derrière votre contenu existant. Vous pouvez utiliser [des styles CSS personnalisés dans le tutoriel HTML vers PDF](https://ironpdf.com/java/tutorials/html-to-pdf/) pour produire des remplissages en dégradé, des motifs répétés ou des arrière-plans à base d'images. Le moteur de rendu HTML traite les propriétés CSS modernes, donc les conceptions qui fonctionnent dans un navigateur se traduisent directement en couche d'arrière-plan.
[[t:(Utilisez `<body style='margin:0; padding:0;'>` dans votre modèle d'arrière-plan HTML pour éliminer les marges par défaut du navigateur et garantir que la couleur ou l'image remplit toute la page.)]]
### À quoi ressemble le PDF de sortie de l'arrière-plan ?
<iframe src="/static-assets/ironpdf-java/howto/background-foreground/addBackground.pdf" width="100%" height="400px">
Ce navigateur ne prend pas en charge les PDF. Veuillez télécharger le PDF pour le visualiser :
<a href="#download-modal">Téléchargez l'échantillon PDF</a>.
</iframe>
### Pourquoi utiliser HTML pour créer des arrière-plans de PDF ?
Ajouter un arrière-plan superpose une image ou une page de document derrière le contenu existant, permettant des en-têtes, remplissages de couleur, filigranes, et éléments de design décoratif. Superposer un premier plan place du contenu au-dessus, ce qui est utile pour les annotations, tampons et indicateurs d'approbation.
L'approche basée sur HTML offre plusieurs avantages concrets par rapport aux importations d'images :
- **Contrôle CSS précis** : Utilisez n'importe quelle couleur, dégradé, image ou mise en page CSS pour définir le design de l'arrière-plan.
- **Adaptabilité à la taille de la page** : Les arrière-plans rendus à partir de HTML s'adaptent automatiquement aux dimensions de la page PDF cible.
- **Génération dynamique** : Construisez des arrière-plans de manière programmatique à partir de données, préférences utilisateur ou logique de modèle.
- **Sortie légère** : Les arrière-plans définis par CSS sont plus petits que les images raster à qualité visuelle équivalente.
Cette fonctionnalité convient pour [créer des formulaires](https://ironpdf.com/java/how-to/create-forms/) avec des en-têtes d'entreprise ou [ajouter des filigranes personnalisés](https://ironpdf.com/java/how-to/custom-watermark/) aux documents légaux et financiers.
## Comment ajouter un arrière-plan à des pages spécifiques ?
La méthode `addBackgroundPdf` accepte un argument `PageSelection` optionnel qui limite l'opération aux pages que vous spécifiez. Utilisez `PageSelection.firstPage()`, `PageSelection.lastPage()`, `PageSelection.singlePage(int index)` ou `PageSelection.pageRange(int start, int end)` pour cibler n'importe quel sous-ensemble de pages. La documentation complète de `PageSelection` est disponible dans la [IronPDF for Java API Reference](https://ironpdf.com/java/object-reference/api/).
```java
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/add-background-specific-page.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.edit.PageSelection;
import java.nio.file.Paths;
// Load the target PDF
PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));
// Load a background from an existing PDF file
PdfDocument background = PdfDocument.fromFile(Paths.get("background.pdf"));
// Apply only the first page of the background PDF to the first page of the target
pdf.addBackgroundPdf(background, 0, PageSelection.firstPage());
pdf.saveAs(Paths.get("addBackgroundToSpecificPage.pdf"));
```
Le deuxième argument (`0`) est le `backgroundPdfPageIndex`, un index basé sur zéro qui sélectionne quelle page du PDF d'arrière-plan utiliser comme source. Lorsque votre modèle d'arrière-plan contient plusieurs conceptions de page, ce paramètre vous permet d'appliquer différentes conceptions à différentes sections du document cible. Combinez des arrière-plans sélectifs avec [des exemples de fractionnement et de fusion de PDF](https://ironpdf.com/java/examples/split-pdfs/) pour construire des flux de travail d'assemblage de documents en plusieurs étapes.
### Quand devriez-vous appliquer des arrière-plans à des pages spécifiques ?
L'application sélective d'arrière-plans couvre une gamme de scénarios courants de documents :
- **Pages de couverture** : Marquez la première page avec un design pleine page tout en gardant les pages de corps propres.
- **Séparateurs de chapitres** : Appliquer des arrière-plans de section à la première page de chaque chapitre.
- **Authentification légale** : Ajoutez un en-tête officiel seulement aux pages nécessitant une certification formelle.
- **Sections confidentielles** : Teintez ou marquez des pages spécifiques pour indiquer du contenu restreint.
- **Mises en page prêtes pour l'impression** : Appliquez des arrière-plans sûrs pour les marges aux pages destinées à l'impression physique.
Après avoir appliqué des images d'arrière-plan haute résolution, envisagez [de comprimer le PDF de sortie](https://ironpdf.com/java/examples/pdf-compression/) pour maintenir des tailles de fichier gérables pour la distribution ou l'archivage.
<hr />
## Comment ajouter une superposition de premier plan à un PDF ?
La méthode `addForegroundPdf` compose une couche PDF au-dessus du contenu de la page existante. Le premier plan rendu apparaît au-dessus de tous les textes, images et graphiques existants sur chaque page cible. Cette méthode est l'approche standard pour les filigranes, tampons d'approbation, et indicateurs de révision qui doivent rester visibles quel que soit le contenu sous-jacent. Pour des exemples de code fonctionnels, voir les [exemples Java de fonds et premiers plans](https://ironpdf.com/java/examples/backgrounds-and-foregrounds/).
```java
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/add-foreground.java
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import java.nio.file.Paths;
// Activate the license
License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");
// Load the target PDF
PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));
// Render a diagonal text stamp as the foreground layer
PdfDocument foreground = PdfDocument.renderHtmlAsPdf(
"<h1 style='transform: rotate(-45deg); opacity: 0.5;'>Foreground Example</h1>"
);
// Apply the foreground to all pages
pdf.addForegroundPdf(foreground);
pdf.saveAs(Paths.get("overlayForeground.pdf"));
```
La propriété CSS `opacity` contrôle la transparence pour que le tampon de premier plan ne masque pas totalement le contenu sous-jacent. La propriété `transform: rotate()` applique l'orientation diagonale, qui est standard pour les filigranes de brouillon et confidentiels. La bibliothèque gère toute la composition en interne; aucune manipulation manuelle du flux PDF n'est requise.
[[i:(Le rendu de premier plan utilise le même moteur HTML vers PDF que `renderHtmlAsPdf`. Tout CSS qui fonctionne dans un navigateur moderne (y compris `@font-face`, flexbox et variables CSS) produira un résultat identique dans la couche de premier plan.)]]
### À quoi ressemble la sortie de premier plan?
<iframe src="/static-assets/ironpdf-java/howto/background-foreground/overlayForeground.pdf" width="100%" height="400px">
Ce navigateur ne prend pas en charge les PDF. Veuillez télécharger le PDF pour le visualiser :
<a href="#download-modal">Téléchargez l'échantillon PDF</a>.
</iframe>
### Pourquoi utiliser des incrustations d'avant-plan plutôt que des arrière-plans ?
Les superpositions de premier plan jouent un rôle différent des arrière-plans et sont le bon choix lorsque le contenu ajouté doit apparaître au-dessus du matériel de page existant :
- **Tampons de brouillon et confidentiels** : Placez du texte proéminent mais transparent sur les pages sans supprimer le contenu existant.
- **Annotations d'approbation et d'examen** : Superposez des indicateurs de validation ou des notes de révision sur des documents complétés.
- **Identifiants de sécurité** : Ajoutez des codes de suivi ou des identifiants de document uniques qui se trouvent au-dessus de tout le contenu de la page.
- **Indicateurs d'expiration** : Marquez les documents sensibles au temps avec des avis visibles qui apparaissent au-dessus des tableaux de données ou des graphiques.
- **Marques de certification** : Appliquez des logos ou des sceaux sur le contenu finalisé de manière à ne pas être couvert par des éléments de page existants.
Les superpositions de premier plan fonctionnent bien avec le [remplissage de formulaires PDF en Java](https://ironpdf.com/java/how-to/java-fill-pdf-form-tutorial/) lorsqu'il faut placer des indicateurs de statut ou des tampons d'approbation sur des données de formulaire complétées.
## Comment ajouter un premier plan à des pages spécifiques ?
La méthode `addForegroundPdf` accepte un argument `PageSelection` de la même manière que `addBackgroundPdf`. Utilisez `PageSelection.pageRange(int start, int end)` pour limiter le premier plan à une plage contiguë, ou passez un `List<Integer>` pour cibler des pages non séquentielles.
```java
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/add-foreground-page-range.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.edit.PageSelection;
import java.nio.file.Paths;
// Load the target PDF
PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));
// Render the foreground overlay
PdfDocument foreground = PdfDocument.renderHtmlAsPdf(
"<h1 style='transform: rotate(-45deg); opacity: 0.5;'>Foreground Example</h1>"
);
// Apply the foreground to pages 2 through 8 (zero-based index: 1 to 7)
pdf.addForegroundPdf(foreground, PageSelection.pageRange(2, 8));
pdf.saveAs(Paths.get("overlayForeground.pdf"));
```
[[n:(L'index `pageRange` est **basé sur un** dans certaines surcharges et basé sur zéro dans d'autres selon la surcharge que vous appelez. Consultez la [Référence API IronPDF for Java](https://ironpdf.com/java/object-reference/api/) pour la signature de surcharge spécifique pour confirmer la convention d'indexation dans votre version.)]]
### Quand devriez-vous utiliser des plages de pages pour les premiers plans ?
L'application de premiers plans spécifiques aux pages est utile dans plusieurs scénarios de production :
- **Sections de document** : Tamponnez une superposition "BROUILLON" uniquement sur l'annexe ou les pages supplémentaires.
- **Suivi de version** : Marquez les pages mises à jour avec un tampon de révision tout en laissant les pages inchangées non modifiées.
- **Confidentialité sélective** : Appliquez une superposition "RESTRICTED" uniquement aux pages contenant des données financières ou médicales sensibles.
- **Documents multilingues** : Placez des avis spécifiques à la langue sur les pages pertinentes d'un document bilingue.
- **Gestion des contrats** : Ajoutez une superposition "VOID" aux pages de contrat expirées sans modifier l'intégralité du document.
### Quels sont les modèles de sélection de pages courants ?
Les modèles suivants couvrent la plupart des scénarios de superposition sélective :
```java
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/page-selection-patterns.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.edit.PageSelection;
import java.util.ArrayList;
import java.util.List;
import java.nio.file.Paths;
PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));
PdfDocument foreground = PdfDocument.renderHtmlAsPdf("<h1 style='opacity: 0.4;'>DRAFT</h1>");
PdfDocument background1 = PdfDocument.fromFile(Paths.get("cover-background.pdf"));
PdfDocument background2 = PdfDocument.fromFile(Paths.get("end-background.pdf"));
// Apply foreground to all even-numbered pages (zero-based)
List<Integer> evenPages = new ArrayList<>();
for (int i = 1; i < pdf.getPageCount(); i += 2) {
evenPages.add(i);
}
pdf.addForegroundPdf(foreground, PageSelection.pageRange(evenPages));
// Apply different backgrounds to the first and last pages
pdf.addBackgroundPdf(background1, 0, PageSelection.firstPage());
pdf.addBackgroundPdf(background2, 0, PageSelection.lastPage());
// Apply foreground to all pages except the first and last
if (pdf.getPageCount() > 2) {
pdf.addForegroundPdf(foreground, PageSelection.pageRange(1, pdf.getPageCount() - 2));
}
pdf.saveAs(Paths.get("selective-overlay.pdf"));
```
[[t:(Enchaînez plusieurs appels `addBackgroundPdf` et `addForegroundPdf` sur le même `PdfDocument` pour créer des modèles superposés. Par exemple, appliquez une couleur de marque en fond, puis ajoutez un tampon de confidentialité au premier plan dans un seul pipeline.)]]
<hr />
## Quels Méthodes le `PageSelection` Classe Fournit-elle ?
La classe `PageSelection` contrôle quelles pages reçoivent la couche d'arrière-plan ou de premier plan. Toutes les méthodes de fabrication intégrées renvoient un objet `PageSelection` accepté à la fois par `addBackgroundPdf` et `addForegroundPdf`.
<table class="content__data-table" data-content-table>
<caption>Méthodes de fabrique PageSelection pour cibler des pages spécifiques dans addBackgroundPdf et addForegroundPdf</caption>
<thead>
<tr><th>Méthode</th><th>Description du projet</th></tr>
</thead>
<tbody>
<tr><td><code>premierePage()</code></td><td>Cible la première page du PDF</td></tr>
<tr><td><code>dernierePage()</code></td><td>Cible la dernière page du PDF</td></tr>
<tr><td><code>pageUnique(int index)</code></td><td>Cible une page par index basé sur zéro</td></tr>
<tr><td><code>plagePages(int debut, int fin)</code></td><td>Cible une plage de pages contiguës (inclusivement)</td></tr>
<tr><td><code>pageRange(List<Integer> pageList)</code></td><td>Cible une liste de pages non séquentielles</td></tr>
<tr><td><code>toutesLesPages()</code></td><td>Cible toutes les pages (par défaut si aucune sélection n'est passée)</td></tr>
</tbody>
</table>
### Comment Choisir la Bonne Méthode `PageSelection` ?
Le choix de la méthode dépend de la structure du document et de l'étendue de la superposition :
- `firstPage()` : pages de couverture, pages de titre et éléments de design introductifs.
- `lastPage()` : blocs de signature, avis de fin de document et résumés de clôture.
- `singlePage()` : certificats, formulaires ou pages individuelles nécessitant un traitement spécifique.
- `pageRange(start, end)` : chapitres, annexes ou toute section de document continue.
- `pageRange(List)` : sélections non séquentielles telles que toutes les pages impaires ou un ensemble spécifié manuellement.
Pour la documentation complète des paramètres et les signatures de surcharge des méthodes, consultez la [référence API Java IronPDF](https://ironpdf.com/java/object-reference/api/).
## Quelles sont les prochaines étapes pour ajouter des fonds et des premiers plans aux PDFs ?
Les méthodes `addBackgroundPdf` et `addForegroundPdf` couvrent l'ensemble des scénarios de superposition PDF, des simples remplissages de couleur et filigranes aux workflows d'assemblage de documents multi-modèles. Combinez-les avec `PageSelection` pour appliquer différents designs par section, ou enchaînez-les avec d'autres méthodes `PdfDocument` pour créer des pipelines de documents prêts pour la production. Pour des techniques de superposition supplémentaires comme les tampons de texte et d'image, explorez le [guide de tamponnage de texte et d'images](https://ironpdf.com/how-to/stamp-text-image/) ou les [exemples d'annotations pour Java](https://ironpdf.com/java/examples/annotations/).
Pour utiliser ces fonctionnalités dans votre projet, [démarrez un essai gratuit d'IronPDF for Java](#trial-license) ou [consultez les options de licence](#licensing) pour un déploiement commercial. IronPDF est disponible via Maven Central et prend en charge Java 8 et plus tard sur Windows, Linux et macOS.
Prêt à voir ce qu'IronPDF peut faire d'autre ? Explorez le [didacticiel HTML vers PDF complet pour Java](https://ironpdf.com/java/tutorials/html-to-pdf/) pour un aperçu complet des options de rendu, manipulation et exportation.
IronPDF for Java fournit des méthodes addBackgroundPdf et addForegroundPdf qui placent du contenu PDF supplémentaire soit derrière, soit sur le dessus des pages existantes. Ces méthodes couvrent l'ensemble des scénarios pratiques de superposition : en-têtes, remplissages de couleur, filigranes, tampons d'approbation, et indicateurs de révision. La bibliothèque rend HTML en PDF en interne, donc toute expression CSS valide (dégradés, images, typographie) peut devenir une couche d'arrière-plan ou de premier plan sans manipulation manuelle du flux PDF.
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/quickstart.javaimport com.ironsoftware.ironpdf.*;import com.ironsoftware.ironpdf.edit.PageSelection;import java.nio.file.Paths;// Load the target PDFPdfDocument pdf = PdfDocument.fromFile(Paths.get("document.pdf"));// Render a background from HTML and apply it to all pagesPdfDocument background = PdfDocument.renderHtmlAsPdf("<body style='background-color: #f0f0f0;'></body>");pdf.addBackgroundPdf(background);// Render a foreground overlay and apply it to all pagesPdfDocument foreground = PdfDocument.renderHtmlAsPdf("<h1 style='opacity: 0.3;'>DRAFT</h1>");pdf.addForegroundPdf(foreground);pdf.saveAs(Paths.get("output.pdf"));
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/quickstart.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.edit.PageSelection;
import java.nio.file.Paths;
// Load the target PDF
PdfDocument pdf = PdfDocument.fromFile(Paths.get("document.pdf"));
// Render a background from HTML and apply it to all pages
PdfDocument background = PdfDocument.renderHtmlAsPdf("<body style='background-color: #f0f0f0;'></body>");
pdf.addBackgroundPdf(background);
// Render a foreground overlay and apply it to all pages
PdfDocument foreground = PdfDocument.renderHtmlAsPdf("<h1 style='opacity: 0.3;'>DRAFT</h1>");
pdf.addForegroundPdf(foreground);
pdf.saveAs(Paths.get("output.pdf"));
Java
3Déployez pour tester sur votre environnement de production.
Commencez à utiliser IronPDF dans votre projet dès aujourd'hui avec un essai gratuit
Rendez ou importez le PDF d'arrière-plan ou de premier plan
Appelez addBackgroundPdf pour appliquer le contenu derrière les pages existantes
Appelez addForegroundPdf pour superposer le contenu sur les pages existantes
Comment ajouter un arrière-plan à un PDF ?
Pour ajouter un arrière-plan à un PDF existant, appelez addBackgroundPdf sur une instance PdfDocument et passez un deuxième PdfDocument comme source de l'arrière-plan. La méthode compose l'arrière-plan sous chaque page du document cible. Avant d'exécuter le code, configurez IronPDF avec votre clé de licence pour activer la bibliothèque.
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/add-background.javaimport com.ironsoftware.ironpdf.License;import com.ironsoftware.ironpdf.PdfDocument;import java.nio.file.Paths;// Activate the licenseLicense.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");// Load the target PDFPdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));// Render a background from an HTML color definitionPdfDocument background = PdfDocument.renderHtmlAsPdf("<body style='background-color: cyan;'></body>");// Apply the background to all pagespdf.addBackgroundPdf(background);pdf.saveAs(Paths.get("addBackground.pdf"));
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/add-background.java
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import java.nio.file.Paths;
// Activate the license
License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");
// Load the target PDF
PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));
// Render a background from an HTML color definition
PdfDocument background = PdfDocument.renderHtmlAsPdf("<body style='background-color: cyan;'></body>");
// Apply the background to all pages
pdf.addBackgroundPdf(background);
pdf.saveAs(Paths.get("addBackground.pdf"));
Java
L'appel renderHtmlAsPdf convertit tout HTML et CSS valides en une page PDF qu'IronPDF compose derrière votre contenu existant. Vous pouvez utiliser des styles CSS personnalisés dans le tutoriel HTML vers PDF pour produire des remplissages en dégradé, des motifs répétés ou des arrière-plans à base d'images. Le moteur de rendu HTML traite les propriétés CSS modernes, donc les conceptions qui fonctionnent dans un navigateur se traduisent directement en couche d'arrière-plan.
Conseils: Utilisez <body style='margin:0; padding:0;'> dans votre modèle d'arrière-plan HTML pour éliminer les marges par défaut du navigateur et garantir que la couleur ou l'image remplit toute la page.
À quoi ressemble le PDF de sortie de l'arrière-plan ?
Pourquoi utiliser HTML pour créer des arrière-plans de PDF ?
Ajouter un arrière-plan superpose une image ou une page de document derrière le contenu existant, permettant des en-têtes, remplissages de couleur, filigranes, et éléments de design décoratif. Superposer un premier plan place du contenu au-dessus, ce qui est utile pour les annotations, tampons et indicateurs d'approbation.
L'approche basée sur HTML offre plusieurs avantages concrets par rapport aux importations d'images :
Contrôle CSS précis : Utilisez n'importe quelle couleur, dégradé, image ou mise en page CSS pour définir le design de l'arrière-plan.
Adaptabilité à la taille de la page : Les arrière-plans rendus à partir de HTML s'adaptent automatiquement aux dimensions de la page PDF cible.
Génération dynamique : Construisez des arrière-plans de manière programmatique à partir de données, préférences utilisateur ou logique de modèle.
Sortie légère : Les arrière-plans définis par CSS sont plus petits que les images raster à qualité visuelle équivalente.
Comment ajouter un arrière-plan à des pages spécifiques ?
La méthode addBackgroundPdf accepte un argument PageSelection optionnel qui limite l'opération aux pages que vous spécifiez. Utilisez PageSelection.firstPage(), PageSelection.lastPage(), PageSelection.singlePage(int index) ou PageSelection.pageRange(int start, int end) pour cibler n'importe quel sous-ensemble de pages. La documentation complète de PageSelection est disponible dans la IronPDF for Java API Reference.
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/add-background-specific-page.javaimport com.ironsoftware.ironpdf.*;import com.ironsoftware.ironpdf.edit.PageSelection;import java.nio.file.Paths;// Load the target PDFPdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));// Load a background from an existing PDF filePdfDocument background = PdfDocument.fromFile(Paths.get("background.pdf"));// Apply only the first page of the background PDF to the first page of the targetpdf.addBackgroundPdf(background, 0, PageSelection.firstPage());pdf.saveAs(Paths.get("addBackgroundToSpecificPage.pdf"));
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/add-background-specific-page.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.edit.PageSelection;
import java.nio.file.Paths;
// Load the target PDF
PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));
// Load a background from an existing PDF file
PdfDocument background = PdfDocument.fromFile(Paths.get("background.pdf"));
// Apply only the first page of the background PDF to the first page of the target
pdf.addBackgroundPdf(background, 0, PageSelection.firstPage());
pdf.saveAs(Paths.get("addBackgroundToSpecificPage.pdf"));
Java
Le deuxième argument (0) est le backgroundPdfPageIndex, un index basé sur zéro qui sélectionne quelle page du PDF d'arrière-plan utiliser comme source. Lorsque votre modèle d'arrière-plan contient plusieurs conceptions de page, ce paramètre vous permet d'appliquer différentes conceptions à différentes sections du document cible. Combinez des arrière-plans sélectifs avec des exemples de fractionnement et de fusion de PDF pour construire des flux de travail d'assemblage de documents en plusieurs étapes.
Quand devriez-vous appliquer des arrière-plans à des pages spécifiques ?
L'application sélective d'arrière-plans couvre une gamme de scénarios courants de documents :
Pages de couverture : Marquez la première page avec un design pleine page tout en gardant les pages de corps propres.
Séparateurs de chapitres : Appliquer des arrière-plans de section à la première page de chaque chapitre.
Authentification légale : Ajoutez un en-tête officiel seulement aux pages nécessitant une certification formelle.
Sections confidentielles : Teintez ou marquez des pages spécifiques pour indiquer du contenu restreint.
Mises en page prêtes pour l'impression : Appliquez des arrière-plans sûrs pour les marges aux pages destinées à l'impression physique.
Après avoir appliqué des images d'arrière-plan haute résolution, envisagez de comprimer le PDF de sortie pour maintenir des tailles de fichier gérables pour la distribution ou l'archivage.
Comment ajouter une superposition de premier plan à un PDF ?
La méthode addForegroundPdf compose une couche PDF au-dessus du contenu de la page existante. Le premier plan rendu apparaît au-dessus de tous les textes, images et graphiques existants sur chaque page cible. Cette méthode est l'approche standard pour les filigranes, tampons d'approbation, et indicateurs de révision qui doivent rester visibles quel que soit le contenu sous-jacent. Pour des exemples de code fonctionnels, voir les exemples Java de fonds et premiers plans.
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/add-foreground.javaimport com.ironsoftware.ironpdf.License;import com.ironsoftware.ironpdf.PdfDocument;import java.nio.file.Paths;// Activate the licenseLicense.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");// Load the target PDFPdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));// Render a diagonal text stamp as the foreground layerPdfDocument foreground = PdfDocument.renderHtmlAsPdf( "<h1 style='transform: rotate(-45deg); opacity: 0.5;'>Foreground Example</h1>");// Apply the foreground to all pagespdf.addForegroundPdf(foreground);pdf.saveAs(Paths.get("overlayForeground.pdf"));
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/add-foreground.java
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import java.nio.file.Paths;
// Activate the license
License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");
// Load the target PDF
PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));
// Render a diagonal text stamp as the foreground layer
PdfDocument foreground = PdfDocument.renderHtmlAsPdf(
"<h1 style='transform: rotate(-45deg); opacity: 0.5;'>Foreground Example</h1>"
);
// Apply the foreground to all pages
pdf.addForegroundPdf(foreground);
pdf.saveAs(Paths.get("overlayForeground.pdf"));
Java
La propriété CSS opacity contrôle la transparence pour que le tampon de premier plan ne masque pas totalement le contenu sous-jacent. La propriété transform: rotate() applique l'orientation diagonale, qui est standard pour les filigranes de brouillon et confidentiels. La bibliothèque gère toute la composition en interne; aucune manipulation manuelle du flux PDF n'est requise.
Veuillez noter: Le rendu de premier plan utilise le même moteur HTML vers PDF que renderHtmlAsPdf. Tout CSS qui fonctionne dans un navigateur moderne (y compris @font-face, flexbox et variables CSS) produira un résultat identique dans la couche de premier plan.
À quoi ressemble la sortie de premier plan?
Pourquoi utiliser des incrustations d'avant-plan plutôt que des arrière-plans ?
Les superpositions de premier plan jouent un rôle différent des arrière-plans et sont le bon choix lorsque le contenu ajouté doit apparaître au-dessus du matériel de page existant :
Tampons de brouillon et confidentiels : Placez du texte proéminent mais transparent sur les pages sans supprimer le contenu existant.
Annotations d'approbation et d'examen : Superposez des indicateurs de validation ou des notes de révision sur des documents complétés.
Identifiants de sécurité : Ajoutez des codes de suivi ou des identifiants de document uniques qui se trouvent au-dessus de tout le contenu de la page.
Indicateurs d'expiration : Marquez les documents sensibles au temps avec des avis visibles qui apparaissent au-dessus des tableaux de données ou des graphiques.
Marques de certification : Appliquez des logos ou des sceaux sur le contenu finalisé de manière à ne pas être couvert par des éléments de page existants.
Les superpositions de premier plan fonctionnent bien avec le remplissage de formulaires PDF en Java lorsqu'il faut placer des indicateurs de statut ou des tampons d'approbation sur des données de formulaire complétées.
Comment ajouter un premier plan à des pages spécifiques ?
La méthode addForegroundPdf accepte un argument PageSelection de la même manière que addBackgroundPdf. Utilisez PageSelection.pageRange(int start, int end) pour limiter le premier plan à une plage contiguë, ou passez un List<Integer> pour cibler des pages non séquentielles.
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/add-foreground-page-range.javaimport com.ironsoftware.ironpdf.*;import com.ironsoftware.ironpdf.edit.PageSelection;import java.nio.file.Paths;// Load the target PDFPdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));// Render the foreground overlayPdfDocument foreground = PdfDocument.renderHtmlAsPdf( "<h1 style='transform: rotate(-45deg); opacity: 0.5;'>Foreground Example</h1>");// Apply the foreground to pages 2 through 8 (zero-based index: 1 to 7)pdf.addForegroundPdf(foreground, PageSelection.pageRange(2, 8));pdf.saveAs(Paths.get("overlayForeground.pdf"));
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/add-foreground-page-range.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.edit.PageSelection;
import java.nio.file.Paths;
// Load the target PDF
PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));
// Render the foreground overlay
PdfDocument foreground = PdfDocument.renderHtmlAsPdf(
"<h1 style='transform: rotate(-45deg); opacity: 0.5;'>Foreground Example</h1>"
);
// Apply the foreground to pages 2 through 8 (zero-based index: 1 to 7)
pdf.addForegroundPdf(foreground, PageSelection.pageRange(2, 8));
pdf.saveAs(Paths.get("overlayForeground.pdf"));
Java
Important: L'index pageRange est basé sur un dans certaines surcharges et basé sur zéro dans d'autres selon la surcharge que vous appelez. Consultez la Référence API IronPDF for Java pour la signature de surcharge spécifique pour confirmer la convention d'indexation dans votre version.
Quand devriez-vous utiliser des plages de pages pour les premiers plans ?
L'application de premiers plans spécifiques aux pages est utile dans plusieurs scénarios de production :
Sections de document : Tamponnez une superposition "BROUILLON" uniquement sur l'annexe ou les pages supplémentaires.
Suivi de version : Marquez les pages mises à jour avec un tampon de révision tout en laissant les pages inchangées non modifiées.
Confidentialité sélective : Appliquez une superposition "RESTRICTED" uniquement aux pages contenant des données financières ou médicales sensibles.
Documents multilingues : Placez des avis spécifiques à la langue sur les pages pertinentes d'un document bilingue.
Gestion des contrats : Ajoutez une superposition "VOID" aux pages de contrat expirées sans modifier l'intégralité du document.
Quels sont les modèles de sélection de pages courants ?
Les modèles suivants couvrent la plupart des scénarios de superposition sélective :
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/page-selection-patterns.javaimport com.ironsoftware.ironpdf.*;import com.ironsoftware.ironpdf.edit.PageSelection;import java.util.ArrayList;import java.util.List;import java.nio.file.Paths;PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));PdfDocument foreground = PdfDocument.renderHtmlAsPdf("<h1 style='opacity: 0.4;'>DRAFT</h1>");PdfDocument background1 = PdfDocument.fromFile(Paths.get("cover-background.pdf"));PdfDocument background2 = PdfDocument.fromFile(Paths.get("end-background.pdf"));// Apply foreground to all even-numbered pages (zero-based)List<Integer> evenPages = new ArrayList<>();for (int i = 1; i < pdf.getPageCount(); i += 2) { evenPages.add(i);}pdf.addForegroundPdf(foreground, PageSelection.pageRange(evenPages));// Apply different backgrounds to the first and last pagespdf.addBackgroundPdf(background1, 0, PageSelection.firstPage());pdf.addBackgroundPdf(background2, 0, PageSelection.lastPage());// Apply foreground to all pages except the first and lastif (pdf.getPageCount() > 2) { pdf.addForegroundPdf(foreground, PageSelection.pageRange(1, pdf.getPageCount() - 2));}pdf.saveAs(Paths.get("selective-overlay.pdf"));
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/background-foreground/page-selection-patterns.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.edit.PageSelection;
import java.util.ArrayList;
import java.util.List;
import java.nio.file.Paths;
PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));
PdfDocument foreground = PdfDocument.renderHtmlAsPdf("<h1 style='opacity: 0.4;'>DRAFT</h1>");
PdfDocument background1 = PdfDocument.fromFile(Paths.get("cover-background.pdf"));
PdfDocument background2 = PdfDocument.fromFile(Paths.get("end-background.pdf"));
// Apply foreground to all even-numbered pages (zero-based)
List<Integer> evenPages = new ArrayList<>();
for (int i = 1; i < pdf.getPageCount(); i += 2) {
evenPages.add(i);
}
pdf.addForegroundPdf(foreground, PageSelection.pageRange(evenPages));
// Apply different backgrounds to the first and last pages
pdf.addBackgroundPdf(background1, 0, PageSelection.firstPage());
pdf.addBackgroundPdf(background2, 0, PageSelection.lastPage());
// Apply foreground to all pages except the first and last
if (pdf.getPageCount() > 2) {
pdf.addForegroundPdf(foreground, PageSelection.pageRange(1, pdf.getPageCount() - 2));
}
pdf.saveAs(Paths.get("selective-overlay.pdf"));
Java
Conseils: Enchaînez plusieurs appels addBackgroundPdf et addForegroundPdf sur le même PdfDocument pour créer des modèles superposés. Par exemple, appliquez une couleur de marque en fond, puis ajoutez un tampon de confidentialité au premier plan dans un seul pipeline.
Quels Méthodes le PageSelection Classe Fournit-elle ?
La classe PageSelection contrôle quelles pages reçoivent la couche d'arrière-plan ou de premier plan. Toutes les méthodes de fabrication intégrées renvoient un objet PageSelection accepté à la fois par addBackgroundPdf et addForegroundPdf.
Méthodes de fabrique PageSelection pour cibler des pages spécifiques dans addBackgroundPdf et addForegroundPdf
Méthode
Description du projet
premierePage()
Cible la première page du PDF
dernierePage()
Cible la dernière page du PDF
pageUnique(int index)
Cible une page par index basé sur zéro
plagePages(int debut, int fin)
Cible une plage de pages contiguës (inclusivement)
pageRange(List<Integer> pageList)
Cible une liste de pages non séquentielles
toutesLesPages()
Cible toutes les pages (par défaut si aucune sélection n'est passée)
Comment Choisir la Bonne Méthode PageSelection ?
Le choix de la méthode dépend de la structure du document et de l'étendue de la superposition :
firstPage() : pages de couverture, pages de titre et éléments de design introductifs.
lastPage() : blocs de signature, avis de fin de document et résumés de clôture.
singlePage() : certificats, formulaires ou pages individuelles nécessitant un traitement spécifique.
pageRange(start, end) : chapitres, annexes ou toute section de document continue.
pageRange(List) : sélections non séquentielles telles que toutes les pages impaires ou un ensemble spécifié manuellement.
Pour la documentation complète des paramètres et les signatures de surcharge des méthodes, consultez la référence API Java IronPDF.
Quelles sont les prochaines étapes pour ajouter des fonds et des premiers plans aux PDFs ?
Les méthodes addBackgroundPdf et addForegroundPdf couvrent l'ensemble des scénarios de superposition PDF, des simples remplissages de couleur et filigranes aux workflows d'assemblage de documents multi-modèles. Combinez-les avec PageSelection pour appliquer différents designs par section, ou enchaînez-les avec d'autres méthodes PdfDocument pour créer des pipelines de documents prêts pour la production. Pour des techniques de superposition supplémentaires comme les tampons de texte et d'image, explorez le guide de tamponnage de texte et d'images ou les exemples d'annotations pour Java.
Prêt à voir ce qu'IronPDF peut faire d'autre ? Explorez le didacticiel HTML vers PDF complet pour Java pour un aperçu complet des options de rendu, manipulation et exportation.
Questions Fréquemment Posées
Comment ajouter un arrière-plan à un PDF existant en Java ?
Chargez le PDF cible avec PdfDocument.fromFile(), créez un PDF d'arrière-plan en utilisant PdfDocument.renderHtmlAsPdf() avec votre HTML/CSS, puis appelez pdf.addBackgroundPdf(background) pour le composer derrière toutes les pages. Activez d'abord la bibliothèque avec License.setLicenseKey().
Quelle est la différence entre addBackgroundPdf et addForegroundPdf ?
addBackgroundPdf place la couche PDF source derrière le contenu de la page existante, ce qui le rend adapté aux en-têtes, remplissages de couleur, et modèles de design. addForegroundPdf place la couche au-dessus du contenu existant, le rendant adapté aux filigranes, tampons de brouillon, indicateurs d'approbation, et avis de confidentialité.
Puis-je appliquer un arrière-plan ou un premier plan à certaines pages uniquement ?
Oui. Les méthodes addBackgroundPdf et addForegroundPdf acceptent un argument optionnel PageSelection. Utilisez PageSelection.firstPage(), PageSelection.lastPage(), PageSelection.singlePage(int index), ou PageSelection.pageRange(int start, int end) pour cibler un sous-ensemble de pages.
Comment puis-je créer un arrière-plan PDF en utilisant HTML et CSS ?
Appelez PdfDocument.renderHtmlAsPdf() et passez votre chaîne HTML. IronPDF prend en charge CSS moderne incluant les dégradés, images d'arrière-plan, polices personnalisées, et opacité. La page rendue est mise à l'échelle pour correspondre automatiquement aux dimensions du document cible.
Que contrôle le paramètre backgroundPdfPageIndex ?
Le deuxième argument entier de addBackgroundPdf est l'index de page basé sur zéro dans le PDF d'arrière-plan à utiliser comme source. Lorsque votre modèle d'arrière-plan a plusieurs designs de pages, passez différentes valeurs d'index pour appliquer différents designs à différentes sections du document cible.
Une licence est-elle requise pour ajouter des arrière-plans et des premiers plans en Java ?
Oui. Définissez une clé de licence valide en utilisant License.setLicenseKey() avant tout appel d'API. Des licences d'essai gratuites sont disponibles sur ironpdf.com pour l'évaluation. La bibliothèque nécessite une licence appropriée pour une utilisation en production.
Can IronPDF handle CSS for designing PDF overlays?
Yes, IronPDF uses an HTML-to-PDF engine that supports modern CSS, including gradients, typography, and images. This capability allows you to use any CSS that works in a browser for your PDF overlays.
How do you choose between backgrounds and foregrounds for PDF overlays?
Choose backgrounds for designs beneath existing content, like watermarks and letterheads, and foregrounds for layers above existing content, like approval stamps and annotations, which should be visible regardless of the underlying material.
How can I use IronPDF to compress PDFs after applying overlays?
After applying high-resolution overlays, you can use IronPDF's PDF compression features to reduce file sizes, which is useful for distribution or archiving. Refer to IronPDF's compression examples for implementation.
What is required to start using IronPDF in a Java project?
To use IronPDF in a Java project, include it as a dependency in your `pom.xml` from Maven Central, and activate your license key before executing API calls. Full setup details are available in IronPDF's documentation.
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.