IRONSOFTWAREHOME
UTILISATION DE IRONPDF

Comment extraire des images d'un PDF en C#

Curtis Chau
Curtis Chau
Updated: 23 avril 2026

Les applications web modernes exigent plus qu'une simple création de documents statiques. Que ce soit pour générer des factures personnalisées, créer des rapports PDF basés sur les données, ou produire des champs de formulaire personnalisés, les développeurs ont besoin d'outils robustes pour générer des documents PDF à l'exécution. IronPDF émerge comme la solution leader, offrant un rendu puissant basé sur Chrome pour créer des documents PDF avec une intégration C# fluide pour la génération dynamique de PDF dans les environnements C# et .NET Framework.

Comment générer dynamiquement des PDF en C# : Figure 1 - Multiplateforme

What is Dynamic PDF Generation in C#?

La génération dynamique de PDF en C# crée des documents PDF à l'exécution en utilisant des données variables provenant de multiples sources de données, y compris des bases de données, des API, ou des entrées utilisateur. Contrairement aux fichiers PDF statiques, la génération à l'exécution permet un contenu personnalisé, des sections conditionnelles, et des mises en page basées sur les données ; ceci est essentiel pour les factures, les rapports PDF, les certificats, et les formulaires qui s'adaptent aux exigences changeantes. Cette approche pour créer un PDF de façon programmatique est devenue cruciale pour les applications modernes .NET Framework et .NET Core.

Comment générer dynamiquement des PDF en C# : Figure 2 - Multiplateforme

Commencer avec IronPDF

Commencez par installer le package NuGet IronPDF via la console du gestionnaire de packages dans Visual Studio :

PM > Install-Package IronPdf

Comment générer dynamiquement des PDF en C# : Figure 3 - Installation

Ou utilisez l'interface du gestionnaire de packages NuGet pour télécharger et installer. Initialisez le ChromePdfRenderer pour une génération de PDF au pixel près :

using IronPdf;
// Create Chrome renderer instance
var renderer = new ChromePdfRenderer();
// Configure rendering options for PDF format
renderer.RenderingOptions.MarginTop = 50;
renderer.RenderingOptions.MarginBottom = 50;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;

La classe ChromePdfRenderer fournit la base pour générer un PDF à l'exécution. Le réglage des marges assure un espace pour les en-têtes et pieds de page, tandis que PrintHtmlBackgrounds préserve les éléments de design. Cette configuration aide à créer des documents PDF basés sur le contenu HTML exactement. En savoir plus sur les options de rendu pour personnaliser vos documents PDF.

Comment créer dynamiquement des documents PDF en utilisant un modèle

Créez des modèles HTML réutilisables avec des espaces réservés pour l'injection de données dynamiques :

// Define HTML string template with placeholders
string invoiceTemplate = @"
<html>
<body>
    <h1>Invoice #[[INVOICE_NUMBER]]</h1>
    <p>Date: [[DATE]]</p>
    <p>Customer: [[CUSTOMER_NAME]]</p>
    <table>
        <tr><th>Item</th><th>Price</th></tr>
        [[ITEMS]]
    </table>
    <p><strong>Total: $[[TOTAL]]</strong></p>
</body>
</html>";
// Replace placeholders with dynamic data
var invoiceData = new {
    InvoiceNumber = "INV-2025-001",
    Date = DateTime.Now.ToString("yyyy-MM-dd"),
    CustomerName = "John Doe",
    Total = 1250.00m
};
string finalHtml = invoiceTemplate
    .Replace("[[INVOICE_NUMBER]]", invoiceData.InvoiceNumber)
    .Replace("[[DATE]]", invoiceData.Date)
    .Replace("[[CUSTOMER_NAME]]", invoiceData.CustomerName)
    .Replace("[[TOTAL]]", invoiceData.Total.ToString());
// Generate PDF from populated HTML content
var pdf = renderer.RenderHtmlAsPdf(finalHtml);
pdf.SaveAs("invoice.pdf");

Cette approche de modèle sépare la présentation des données, permettant aux designers de modifier des mises en page complexes tandis que les développeurs se concentrent sur l'intégration des données. La méthode Replace remplace les espaces réservés d'ID de modèle par des valeurs à l'exécution, créant des documents PDF personnalisés. Pour convertir du contenu HTML avec des sections répétitives, construisez le HTML dynamiquement en utilisant des boucles avant la conversion en PDF. Explorez plus d'exemples HTML vers PDF pour un modelage avancé.

Sortie

Comment générer dynamiquement des PDF en C# : Figure 4 - Résultat PDF

Liage de données avancé avec traitement asynchrone

Échelle votre génération de PDF avec des méthodes asynchrones pour un traitement à grand volume :

// Async batch generation for multiple PDF documents
public async Task GenerateMonthlyReportsAsync(List<Customer> customers)
{
    var renderer = new ChromePdfRenderer();
    var tasks = new List<Task>();
    foreach (var customer in customers)
    {
        tasks.Add(Task.Run(async () =>
        {
            // Create HTML content with dynamic data
            string html = $@"
                <h2>Monthly Report - {customer.Name}</h2>
                <p>Account Balance: ${customer.Balance:F2}</p>
                <p>Transactions: {customer.TransactionCount}</p>
                <div style='page-break-after: always;'></div>";
            // Convert HTML to PDF format
            var document = await renderer.RenderHtmlAsPdfAsync(html);
            await document.SaveAs($"reports/{customer.Id}_report.pdf");
        }));
    }
    await Task.WhenAll(tasks);
}

Le modèle asynchrone permet une génération de PDF concurrente, améliorant considérablement le débit lorsque vous générez des documents PDF en lot. Task.WhenAll s'assure que tous les fichiers PDF sont complets avant de continuer. Le code ci-dessus utilise les propriétés CSS de saut de page pour contrôler la pagination, garantissant que chaque rapport client commence sur une nouvelle page. Consultez la documentation de génération de PDF asynchrone pour les applications web d'entreprise.

Créer des formulaires PDF interactifs de façon dynamique

Transformez les pages web avec formulaires HTML en PDFs remplissables de manière programmatique :

// Enable form fields creation in rendering options
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
// Define HTML string with form elements
string formHtml = @"
<form>
    <h2>Customer Survey</h2>
    <label>Name: 
    <label>Email: 
    <label>Satisfaction:
        <select name='satisfaction'>
            <option>Excellent</option>
            <option>Good</option>
            <option>Fair</option>
        </select>
    </label><br>
    <label>Comments: <textarea name='comments'></textarea></label>
</form>";
// Create a PDF with interactive form fields
var pdfDocument = renderer.RenderHtmlAsPdf(formHtml);
pdfDocument.SaveAs("survey_form.pdf");

Le réglage CreatePdfFormsFromHtml convertit les éléments de formulaire HTML en champs de formulaire PDF interactifs. Les utilisateurs peuvent remplir, enregistrer, et soumettre ces documents PDF électroniquement. Cette fonctionnalité simplifie les flux de travail en éliminant les formulaires papier tout en maintenant des schémas de développement HTML familiers. L'objet PDFDocument permet d'accéder à la manipulation des champs de formulaire de manière programmatique. Apprenez à manipuler les formulaires PDF pour les implémentations avancées, y compris les signatures numériques.

Sortie

Comment générer dynamiquement des PDF en C# : Figure 5 - Résultat de formulaire PDF interactif

Pourquoi Choisir IronPDF par Rapport à d'Autres Méthodes

Le moteur de rendu Chrome d'IronPDF garantit une précision au pixel près lorsque vous créez des PDFs, éliminant les compromis des solutions de moteur de rendu WebKit plus anciennes. Contrairement aux alternatives de bibliothèques open source nécessitant des exécutables externes ou des configurations de navigateurs sans tête, IronPDF s'intègre de manière transparente sans aucune dépendance. Les API fluent et design de haut niveau le rendent supérieur aux classes intégrées ou aux implémentations complexes de Crystal Reports.

Comment générer dynamiquement des PDF en C# : Figure 6 - Fonctionnalités

Key advantages for dynamic PDF generation in C#

  • Exécution complète de JavaScript, contrairement à d'autres méthodes
  • Opérations thread-safe pour les applications web
  • Prise en charge complète de l'async avec les modèles d'exemple suivants
  • Numéros de page et contrôle de la taille des polices par une configuration simple de l'API
  • La conversion HTML en PDF correspond exactement à Chrome

Comment générer dynamiquement des PDF en C# : Figure 7 - Génération dynamique de PDF - IronPDF

Les licences commencent à $999 pour des licences de développeur unique, avec des options pour équipes et entreprises disponibles. Chaque package a ses propres avantages, et l'investissement s'amortit en termes d'économies de temps de développement. Accédez instantanément à votre clé API après l'achat. Consultez les options de licence pour trouver le bon package NuGet pour votre projet.

Conclusion

La génération dynamique de PDF en C# transforme la manière dont les applications délivrent des documents personnalisés à l'exécution. IronPDF fournit des outils essentiels pour générer des fichiers PDF à partir de contenu HTML, de pages web, et de sources de données. Son rendu basé sur Chrome garantit que vos PDFs en C# correspondent exactement aux spécifications de conception, tandis que la prise en charge de l'async permet un traitement à l'échelle entreprise.

La commande suivante démarre votre parcours : Install-Package IronPdf. Avec IronPDF, vous pouvez convertir des chaînes HTML, créer des PDFs complexes avec images et tables, ajouter des numéros de page, contrôler la taille des polices, et générer des rapports PDF à partir de n'importe quelle source de données. Chaque nouveau document bénéficie d'un rendu au pixel près, que ce soit pour créer une simple var page ou des mises en page complexes avec plusieurs instances de document var.

Commencez avec le essai gratuit de 30 jours d'IronPDF.

Curtis Chau
Rédacteur technique

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.

...
Lire la suite

Articles connexes

Key in blue circle

Obtenez votre clé d'essai de 30 jours instantanément.

Your trial license will be sent to your email address

Aucune restriction. 100 % débloqué. Pas de carte bancaire.

bullet_checkedAucune carte de crédit ou création de compte requiseAucune restriction. 100 % débloqué. Pas de carte bancaire.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Réservez votre Démonstration en direct gratuite
Booking Badge

De confiance par des millions d'ingénieurs dans le monde entier

Logos des clients d'Iron Software
Obtenez Votre Consultation sans Engagement
Remplissez le formulaire ci-dessous ou envoyez un email à sales@ironsoftware.com
Vos informations seront toujours gardées confidentielles.
De confiance par des millions d'ingénieurs dans le monde entier
Logos des clients d'Iron Software
Obtenez votre clé d'essai 30 jours gratuitement.
Aucune carte de crédit ou création de compte requise