IRONSOFTWAREHOME
UTILISATION DE IRONPDF

Comment créer un visualiseur de PDF ASP.NET Core avec IronPDF

Curtis Chau
Curtis Chau
Updated: 12 juillet 2026

IronPDF simplifie l'extraction de données PDF dans ASP.NET Core en fournissant des méthodes pour lire le texte, les données de formulaire et les tableaux des fichiers PDF à l'aide d'un code C# simple, sans dépendances complexes ni analyse manuelle.

Travailler avec des fichiers PDF dans des applications .NET peut s'avérer plus complexe qu'il n'y paraît. Vous pourriez avoir besoin d'extraire du texte à partir de factures téléchargées, de récupérer des données de formulaires à partir d'enquêtes ou d'analyser des tables pour votre base de données. De nombreux projets ralentissent car les développeurs utilisent des bibliothèques trop complexes qui nécessitent un code d'analyse personnalisé important. IronPDF offre une alternative simple, vous permettant de lire et de traiter des documents PDF avec une configuration minimale.

Que vous gériez du texte simple, des champs de formulaire interactifs ou des données tabulaires structurées, l'API d'IronPDF vous donne un accès direct au contenu PDF sans analyse de bas niveau. Ce guide explique comment lire des données à partir de fichiers PDF dans ASP.NET Core, en abordant l'extraction de texte, la récupération des données de formulaire, l'analyse des tableaux et la gestion du téléchargement asynchrone de fichiers, le tout avec du code C# que vous pouvez intégrer à votre projet.

Comment configurer IronPDF dans un projet ASP.NET Core ?

La prise en main est simple. Installez le package NuGet IronPDF à partir de la console de gestion des packages NuGet ou de la .NET CLI à l'aide de l'une ou l'autre de ces commandes :

PM > Install-Package IronPdf

Une fois le package installé, ajoutez l'espace de noms IronPDF en haut de tout fichier qui fonctionne avec des documents PDF :

using IronPdf;

Voilà toute la configuration requise pour la plupart des projets. IronPDF ne dépend pas de processus de rendu externes ni de dépendances natives supplémentaires sous Windows. Pour les environnements Linux ou Docker, consultez la documentation IronPDF pour obtenir des instructions spécifiques à la plateforme.

Une licence d'essai gratuite vous permet de tester l'ensemble des fonctionnalités avant de vous engager pour une utilisation en production. Vous pouvez obtenir une licence d'essai directement sur le site IronPDF et l'appliquer en une seule ligne de code avant votre première opération PDF.

Comment extraire du texte d'un fichier PDF ?

L'extraction de texte est la tâche la plus courante lors de la lecture de fichiers PDF. IronPDF fournit ExtractAllText pour extraire tout le texte lisible d'un document et ExtractTextFromPage pour un accès par niveau de page. Les deux méthodes préservent l'ordre de lecture et gèrent les encodages de texte standard.

// Load a PDF document from disk
var pdf = PdfDocument.FromFile("document.pdf");

// Extract all text from every page
string allText = pdf.ExtractAllText();

// Extract text from a specific page (zero-based index)
string pageOneText = pdf.ExtractTextFromPage(0);

Console.WriteLine(allText);

ExtractAllText retourne le contenu textuel complet sous forme de chaîne unique, en préservant les sauts de ligne. ExtractTextFromPage cible une seule page en utilisant un index basé sur zéro, ce qui est utile lorsque vous avez seulement besoin du contenu d'une section spécifique d'un document multipage.

Pour un examen approfondi des options d'extraction de texte et d'images, le guide d'extraction de texte à partir de PDF couvre des scénarios avancés, notamment l'extraction basée sur les régions.

Comment intégrer l'extraction de texte dans un contrôleur ASP.NET Core ?

L'action du contrôleur suivante accepte un PDF téléchargé via IFormFile, le lit dans un MemoryStream, et retourne le texte extrait au format JSON :

using IronPdf;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using System.IO;

[ApiController]
[Route("api/[controller]")]
public class PdfController : ControllerBase
{
    [HttpPost("extract-text")]
    public IActionResult ExtractText(IFormFile pdfFile)
    {
        if (pdfFile == null || pdfFile.Length == 0)
            return BadRequest("No PDF file uploaded.");

        using var stream = new MemoryStream();
        pdfFile.CopyTo(stream);

        var pdf = new PdfDocument(stream.ToArray());
        string extractedText = pdf.ExtractAllText();

        return Ok(new { text = extractedText });
    }
}

Ce point de terminaison convertit le fichier téléchargé en un tableau d'octets et le passe directement à PdfDocument. Aucun fichier temporaire n'est écrit sur le disque, ce qui permet de garder le code propre et d'éviter une surcharge de stockage inutile. L'interface IFormFile fonctionne naturellement avec les soumissions de formulaires multipart et les clients API tels que Postman.

Comment lire les données d'un formulaire PDF dans ASP.NET Core?

Les formulaires PDF (également appelés AcroForms ) contiennent des champs interactifs que les utilisateurs remplissent. IronPDF expose les champs de formulaire à travers la propriété Form de PdfDocument, vous donnant le nom et la valeur de chaque champ dans le document.

Le point de terminaison suivant lit un formulaire PDF téléchargé et renvoie toutes les valeurs des champs sous forme de dictionnaire JSON :

[HttpPost("extract-form")]
public IActionResult ExtractForm([FromForm] IFormFile pdfFile)
{
    if (pdfFile == null || pdfFile.Length == 0)
        return BadRequest("No PDF file uploaded.");

    using var stream = new MemoryStream();
    pdfFile.CopyTo(stream);

    var pdf = new PdfDocument(stream.ToArray());
    var formData = new Dictionary<string, string>();

    if (pdf.Form != null)
    {
        foreach (var field in pdf.Form)
        {
            formData[field.Name] = field.Value;
        }
    }

    return Ok(new { formFields = formData });
}

Chaque champ en pdf.Form possède une propriété Name (l'identifiant du champ défini dans l'outil de création de PDF) et une propriété Value (le texte ou la sélection que l'utilisateur a entré). Cette collection comprend des zones de texte, des cases à cocher, des boutons radio et des listes déroulantes.

La réponse JSON facilite le transfert des soumissions de formulaires vers une base de données, une API tierce ou une file d'attente de messages sans aucun traitement supplémentaire. Pour les flux de travail impliquant la création ou l'édition programmatiques de formulaires PDF, le guide des formulaires PDF montre comment ajouter des champs et pré-remplir des valeurs.

À quoi ressemble une réponse typique d'extraction de formulaire ?

Réponse API montrant des données JSON extraites d'un formulaire PDF avec les champs Nom, Email et Adresse affichés dans l'interface de test Postman avec le statut 200 OK

La réponse ci-dessus affiche un résultat 200 OK contenant les noms et valeurs des champs d'un exemple de formulaire de contact au format PDF. La structure est une carte clé-valeur plate, qui correspond parfaitement à la plupart des schémas de bases de données ou des charges utiles REST.

Comment extraire les données d'un tableau à partir d'un PDF ?

Dans les fichiers PDF, les tableaux sont stockés sous forme de texte positionné ; le format PDF ne possède pas de structure de données de tableau native. Extraire des données tabulaires signifie donc extraire le texte brut puis appliquer une logique d'analyse syntaxique pour reconstruire les lignes et les colonnes.

La ExtractAllText de IronPDF conserve les caractères d'espace et de tabulation, ce qui permet de diviser les lignes en colonnes par programme. L'action de contrôleur suivante illustre cette approche :

[HttpPost("extract-table")]
public IActionResult ExtractTable([FromForm] IFormFile pdfFile)
{
    if (pdfFile == null || pdfFile.Length == 0)
        return BadRequest("No PDF file uploaded.");

    using var memoryStream = new MemoryStream();
    pdfFile.CopyTo(memoryStream);

    var pdf = new PdfDocument(memoryStream.ToArray());
    string text = pdf.ExtractAllText();

    // Split into lines, then split each line into columns
    string[] lines = text.Split(
        new[] { '\r', '\n' },
        StringSplitOptions.RemoveEmptyEntries
    );

    var tableData = new List<string[]>();
    foreach (string line in lines)
    {
        string[] columns = line
            .Split('\t')
            .Where(c => !string.IsNullOrWhiteSpace(c))
            .ToArray();

        if (columns.Length > 0)
            tableData.Add(columns);
    }

    var table = tableData.Select(r => string.Join(" | ", r)).ToList();
    return Ok(new { Table = table });
}

Cette approche fonctionne bien pour les fichiers PDF dont les tableaux utilisent des colonnes séparées par des tabulations de manière cohérente. Pour les documents où les colonnes sont séparées par des espaces variables, il peut être nécessaire d'appliquer une heuristique d'espacement minimal ou d'inspecter la position des caractères. Le guide sur la fusion ou la division des PDF est utile lorsque vous devez isoler des pages spécifiques contenant des tableaux avant l'extraction.

Quand faut-il analyser les tables manuellement ?

Réponse API affichant des données de facture structurées extraites du PDF comprenant les détails du client, les métadonnées de la facture et les produits détaillés avec prix au format JSON

L'analyse manuelle est le bon choix lorsque le PDF n'a pas été généré à partir de HTML ou d'une source de données structurées, par exemple des factures numérisées ou des documents créés dans des outils de PAO. L'approche par tabulation permet de gérer de nombreux fichiers PDF standard de manière fiable. Lorsque les limites des colonnes sont irrégulières, vous pouvez affiner la logique en inspectant les coordonnées brutes des caractères via l'API d'accès DOM d'IronPDF.

Pour les documents générés à partir de HTML, envisagez un aller-retour via un intermédiaire HTML. Générer votre PDF à partir d'un modèle HTML basé sur des données (traité dans le guide de conversion de chaîne HTML en PDF ) signifie que les positions du texte seront prévisibles et que l'extraction sera simple.

Comment gérez-vous les chargements asynchrones de fichiers PDF ?

Les applications ASP.NET Core en production doivent gérer les téléchargements de fichiers de manière asynchrone afin d'éviter le blocage du pool de threads. La méthode IFormFile.CopyToAsync combinée avec await maintient le contrôleur non bloquant :

[HttpPost("process-upload")]
public async Task<IActionResult> ProcessPdf([FromForm] IFormFile file)
{
    if (file == null || file.Length == 0)
        return BadRequest("No PDF file uploaded.");

    using var ms = new MemoryStream();
    await file.CopyToAsync(ms);

    var pdf = new PdfDocument(ms.ToArray());
    string text = pdf.ExtractAllText();
    int pageCount = pdf.PageCount;

    return Ok(new
    {
        text,
        pages = pageCount
    });
}

Le constructeur PdfDocument est synchrone, mais l'étape de téléchargement -- souvent la partie la plus lente du processus -- s'exécute de manière asynchrone. Ce modèle s'adapte bien aux charges simultanées et est compatible avec les points de terminaison API minimaux, les gestionnaires Razor Pages et les services gRPC.

Comment limiter la taille des fichiers à télécharger ?

ASP.NET Core impose une limite de taille par défaut de 30 Mo pour le corps des requêtes . Pour les PDF de plus grande taille, augmentez la limite dans Program.cs :

builder.Services.Configure<FormOptions>(options =>
{
    options.MultipartBodyLengthLimit = 100 * 1024 * 1024; // 100 MB
});

Kestrel a sa propre limite que vous devrez peut-être également augmenter :

builder.WebHost.ConfigureKestrel(options =>
{
    options.Limits.MaxRequestBodySize = 100 * 1024 * 1024;
});

Définissez ces valeurs en fonction de la taille maximale réaliste des fichiers PDF que votre application traitera. Vérifiez toujours le type MIME et l'extension du fichier téléchargé avant de le transmettre à IronPDF afin d'éviter toute entrée inattendue.

Comment convertir le contenu extrait d'un PDF en d'autres formats ?

Une fois que vous disposez de données textuelles ou de formulaires, vous pouvez les transmettre à n'importe quel processus en aval requis par votre application : écritures dans la base de données, indexation de recherche, génération de rapports ou appels d'API. IronPDF prend également en charge la conversion dans l'autre sens : la conversion de HTML en PDF.

Dans les cas où vous souhaitez afficher visuellement le contenu extrait, vous pouvez convertir le PDF original en images à l'aide du guide de conversion PDF vers image . Ceci est utile pour les fonctionnalités d'aperçu de documents, lorsque vous souhaitez afficher des vignettes de pages sans charger le PDF complet dans le navigateur.

Si vous devez protéger les documents de sortie avant de les livrer aux utilisateurs, IronPDF prend en charge les signatures numériques et les filigranes en tant qu'étapes de post-traitement. L'ajout d'en-têtes et de pieds de page — traité dans le guide des en-têtes et pieds de page — est tout aussi simple.

Scénarios courants d'extraction de données PDF et méthodes IronPDF recommandées
ScénarioMéthode/Propriété IronPDFRemarques
Extraire tout le texte de la pagepdf.ExtractAllText()Renvoie le texte intégral du document dans l'ordre de lecture
Extraire le texte d'une pagepdf.ExtractTextFromPage(n)Index de page à base zéro
Lire les champs AcroFormpdf.FormÉnumérer field.Name et field.Value
Analyser les lignes du tableauExtractAllText() + logique de séparationSéparer par tabulation ou espaces blancs
Compter les pagespdf.PageCountUtile pour la pagination et la validation
Charger à partir d'un tableau d'octetsnew PdfDocument(bytes)Aucun fichier temporaire requis
Charger à partir du chemin du fichierPdfDocument.FromFile(path)Pour l'accès aux fichiers côté serveur

Quelles sont les prochaines étapes après la configuration de l'extraction de données PDF ?

Vous disposez désormais de modèles fonctionnels pour l'extraction de texte, la lecture des données de formulaire, l'analyse des tableaux et les téléchargements asynchrones. Voici quelques pistes à explorer ensuite, en fonction des exigences de votre application.

Si vous devez générer des rapports PDF en parallèle de votre flux de travail d'extraction, la présentation des fonctionnalités IronPDF couvre le rendu HTML vers PDF, les superpositions de tampons et la manipulation de pages. Pour les applications qui fusionnent des rapports provenant de sources multiples, le guide de fusion ou de division des PDF explique comment combiner et diviser des documents.

Pour une transmission sécurisée des documents, les signatures numériques vous permettent de certifier les fichiers PDF avant de les envoyer à vos clients. Les filigranes personnalisés ajoutent une identité visuelle ou des étiquettes de brouillon aux documents générés.

Si votre projet extrait des données de PDF scannés (images plutôt que texte recherchable), vous aurez besoin d'une étape OCR avant d'appeler ExtractAllText. IronOCR d' Iron Software s'intègre à IronPDF pour gérer les flux de travail des documents numérisés.

IronPDF est disponible avec des options de licence flexibles pour les développeurs individuels et les équipes. Commencez par un essai gratuit pour tester toutes les fonctionnalités sans restrictions. La documentation complète comprend une référence API, des guides de démarrage et des notes de déploiement pour les environnements Windows, Linux, Docker et cloud.

La lecture de données à partir de fichiers PDF dans ASP.NET Core ne nécessite plus de code d'analyse syntaxique de bas niveau ni de dépendances lourdes. Avec IronPDF, le chemin entre le fichier téléchargé et le contenu extrait se résume à quelques lignes qui s'intègrent naturellement dans n'importe quelle couche de contrôleur ou de service.

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.

OR
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
Bibliothèque C# NuGet pour PDF
Installer avec NuGet

Version : 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Dans l'explorateur de solutions, faites un clic droit sur Références, Gestion des packages NuGet
  2. Sélectionnez Parcourir et recherchez « IronPDF »
  3. Sélectionnez le package et installez
C# PDF DLL
Télécharger DLL

Version : 2026.9

ou téléchargez l'installateur Windows ici.

  1. Téléchargez et décompressez IronPDF à un emplacement tel que ~/Libs dans votre répertoire de solution
  2. Dans l'explorateur de solutions Visual Studio, faites un clic droit sur Références. Sélectionnez Parcourir, « IronPDF.dll »

Licences à partir de 749 $