UTILISATION D'IRONPDF

Comment lire un tableau PDF en C#

Jordi Bardia
Jordi Bardia
mars 25, 2023
Mise à jour mars 3, 2024
Partager:

L'extraction de données à partir d'un fichier PDF peut être un véritable défi en C#. Les données peuvent se présenter sous la forme de textes, d'images, de diagrammes, de graphiques, de tableaux, etc. Parfois, les analystes commerciaux doivent extraire des données pour les analyser et prendre des décisions sur la base de ces résultats. La bibliothèque PDF C# IronPDF est une excellente solution pour extraire des données des fichiers PDF.

Cet article explique comment extraire des données de tableaux de documents PDF en C# à l'aide de la bibliothèque IronPDF.

IronPDF - C&num ; Bibliothèque PDF

IronPDF est une solution de bibliothèque C# .NET pour la génération de PDF en .NET, qui aide les développeurs à lire, créer et modifier facilement des documents PDF dans leurs applications logicielles. Son moteur Chromium rend les documents PDF avec précision et rapidité. Il permet aux développeurs de convertir des formats différents en PDF et vice versa de manière transparente. Il prend en charge le dernier Framework .NET 7, ainsi que les Framework .NET 6, 5, 4, .NET Core et Standard.

En outre, l'API IronPDF .NET permet aux développeurs de manipuler et de modifier les PDF, d'ajouter des en-têtes et des pieds de page et d'extraire facilement du texte, des images et des tableaux à partir des PDF.

Quelques caractéristiques importantes

Etapes pour extraire les données d'un tableau dans C# ; en utilisant la bibliothèque IronPDF

Pour extraire les données des tableaux des documents PDF, les composants suivants doivent être installés sur le système informatique local :

  1. Visual Studio - Visual Studio 2022 est l'IDE officiel pour le développement C# et doit être installé sur l'ordinateur. Veuillez le télécharger et l'installer depuis le site web de Visual Studio.

  2. Créer un projet - Créez une application console pour extraire des données. Suivez les étapes ci-dessous pour créer un projet :

    • Ouvrez Visual Studio 2022, puis cliquez sur le bouton Créer un nouveau projet

    Comment lire un tableau PDF en C#, Figure 1 : Écran d'accueil de Visual Studio

    Écran de démarrage de Visual Studio

    • Ensuite, sélectionnez l'application console C# et cliquez sur suivant

    Comment lire un tableau PDF en C#, Figure 2 : Créer une nouvelle application Console dans Visual Studio

    Créer une nouvelle application Console dans Visual Studio

    • Ensuite, tapez le nom de votre projet "ReadPDFTable" et cliquez sur suivant

    Comment lire un tableau PDF en C#, Figure 3 : Configurer la nouvelle application créée

    Configurer la nouvelle application créée

    • Choisissez " .NET Framework 6 long-term support " pour votre projet.

    Comment lire une table PDF en C#, Figure 4 : Sélectionner un .NET Framework

    Sélectionnez un .NET Framework

    • Cliquez sur le bouton Créer, et le projet console sera créé. Nous sommes maintenant prêts à extraire par programme des données de tableaux à partir de documents PDF.
  3. Installer IronPDF - Il existe 3 méthodes différentes pour installer la bibliothèque IronPDF. Elles sont les suivantes :

    • Utilisation de Visual Studio. Visual Studio contient le gestionnaire de paquets NuGet qui permet d'installer tous les paquets NuGet dans les applications C#.

      • Cliquez sur Outils dans le menu supérieur, ou

      • Cliquez avec le bouton droit de la souris sur le projet dans l'explorateur de solutions

    Comment lire un tableau PDF en C#, Figure 5 : Outils et gestion des packages NuGet

    Outils & Gérer les packages NuGet

    - Une fois que le gestionnaire de paquets NuGet est ouvert, recherchez IronPDF et cliquez sur installer, comme indiqué ci-dessous :

    Comment lire un tableau PDF en C#, Figure 6 : Outils et gérer les packages NuGet

    Outils & Gérer les packages NuGet

    • Téléchargez directement le package NuGet. Une autre méthode facile pour télécharger et installer IronPDF est de visiter sa page de package NuGet.

    • Télécharger la bibliothèque IronPDF .DLL. IronPDF peut également être téléchargé depuis le site officiel d'IronPDF. N'oubliez pas que vous devrez faire référence à la DLL dans votre projet pour l'utiliser.

Créer un document PDF avec un tableau de données

Avant de créer quoi que ce soit, il est nécessaire d'ajouter l'espace de noms IronPDF dans le fichier et de définir la clé de licence pour utiliser les méthodes ExtractText de la bibliothèque IronPDF.

using IronPdf;

License.LicenseKey = "YOUR-TRIAL/PURCHASED-LICENSE-KEY";
using IronPdf;

License.LicenseKey = "YOUR-TRIAL/PURCHASED-LICENSE-KEY";

Ici, un document PDF sera créé à partir d'une chaîne HTML contenant un tableau, puis ces données seront extraites à l'aide d'IronPDF. Le code HTML est stocké dans une variable de type chaîne, et le code est le suivant :

string HTML = "<html>" +
        "<style>" +
            "table, th, td {" +
                "border:1px solid black;" +
            "}" +
        "</style>" +
        "<body>" +
            "<h1>A Simple table example</h2>" +
            "<table>" +
                "<tr>" +
                    "<th>Company</th>" +
                    "<th>Contact</th>" +
                    "<th>Country</th>" +
                "</tr>" +
                "<tr>" +
                    "<td>Alfreds Futterkiste</td>" +
                    "<td>Maria Anders</td>" +
                    "<td>Germany</td>" +
                "</tr>" +
                "<tr>" +
                    "<td>Centro comercial Moctezuma</td>" +
                    "<td>Francisco Chang</td>" +
                    "<td>Mexico</td>" +
                "</tr>" +
            "</table>" +
            "<p>To understand the example better, we have added borders to the table.</p>" +
        "</body>" +
     "</html>";
string HTML = "<html>" +
        "<style>" +
            "table, th, td {" +
                "border:1px solid black;" +
            "}" +
        "</style>" +
        "<body>" +
            "<h1>A Simple table example</h2>" +
            "<table>" +
                "<tr>" +
                    "<th>Company</th>" +
                    "<th>Contact</th>" +
                    "<th>Country</th>" +
                "</tr>" +
                "<tr>" +
                    "<td>Alfreds Futterkiste</td>" +
                    "<td>Maria Anders</td>" +
                    "<td>Germany</td>" +
                "</tr>" +
                "<tr>" +
                    "<td>Centro comercial Moctezuma</td>" +
                    "<td>Francisco Chang</td>" +
                    "<td>Mexico</td>" +
                "</tr>" +
            "</table>" +
            "<p>To understand the example better, we have added borders to the table.</p>" +
        "</body>" +
     "</html>";

Ensuite, le ChromePdfRenderer est utilisé pour créer un PDF à partir d'une chaîne HTML. Le code est le suivant :

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdfDocument = renderer.RenderHtmlAsPdf(HTML);
pdfDocument.SaveAs("table_example.pdf");
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdfDocument = renderer.RenderHtmlAsPdf(HTML);
pdfDocument.SaveAs("table_example.pdf");

La méthode SaveAs sauvegardera l'objet PdfDocument dans un fichier PDF nommé "table_example.pdf". Le fichier enregistré est présenté ci-dessous :

Comment lire un tableau PDF en C#, Figure 7 : Rechercher IronPDF dans l'interface du gestionnaire de packages NuGet

Rechercher IronPDF dans l'interface du gestionnaire de packages NuGet

Extraire des données de tableaux à partir de documents PDF à l'aide d'IronPDF

Pour extraire des données à partir de tableaux PDF, ouvrez le document en utilisant l'objet PdfDocument, puis utilisez la méthode ExtractAllText pour récupérer les données pour une analyse ultérieure. Le code suivant montre comment réaliser cette tâche :

PdfDocument pdfDocument = new PdfDocument("table_example.pdf");
string text = pdfDocument.ExtractAllText();
PdfDocument pdfDocument = new PdfDocument("table_example.pdf");
string text = pdfDocument.ExtractAllText();

Le code ci-dessus analyse l'ensemble du document PDF en utilisant la méthode ExtractAllText et renvoie les données extraites, y compris les données tabulaires, dans une variable de type chaîne. La valeur de la variable peut alors être affichée ou stockée dans un fichier pour une utilisation ultérieure. Le code suivant l'affiche à l'écran :

Console.WriteLine("The extracted Text is:\n" + text);
Console.WriteLine("The extracted Text is:\n" + text);

Comment lire un tableau PDF en C#, Figure 8 : Le fichier PDF pour extraire le texte

Le fichier PDF pour extraire du texte

Extraction de données tabulaires à partir de contenu textuel extrait

C# fournit une méthode String.Split qui aide à diviser la chaîne en fonction d'un délimiteur. Le code suivant vous aidera à limiter la sortie aux seules données du tableau.

string [] textList = text.Split("\n");
foreach (string textItem in textList)
{
    if (textItem.Contains("."))
    {
        continue;
    }
    else
    {
        Console.WriteLine(textItem);
    }
}
string [] textList = text.Split("\n");
foreach (string textItem in textList)
{
    if (textItem.Contains("."))
    {
        continue;
    }
    else
    {
        Console.WriteLine(textItem);
    }
}

Cet exemple de code simple permet d'extraire uniquement les données des cellules d'un tableau à partir du texte extrait. Tout d'abord, les lignes de texte sont découpées et enregistrées dans un tableau de chaînes de caractères. Ensuite, chaque élément du tableau est itéré et ceux qui ont un point "." à la fin sont ignorés. Dans la plupart des cas, seules les données tabulaires sont extraites des données extraites, bien que d'autres lignes puissent également être extraites. Le résultat est le suivant :

Comment lire un tableau PDF en C#, Figure 9 : La console affiche les textes extraits

La console affiche les textes extraits

À partir de la capture d'écran ci-dessus, on peut voir que le formatage des données du tableau et la structure logique sont préservés dans la sortie de la méthode Console.WriteLine. Vous pouvez trouver plus de détails sur la façon d'extraire des données de documents PDF en utilisant IronPDF dans cet exemple de code pour extraire des données de PDF en C#.

La sortie peut également être enregistrée dans un fichier CSV qui peut être formaté et édité ultérieurement pour une analyse plus poussée des données. Le code est le suivant :

using (StreamWriter file = new StreamWriter("table_example.csv", false))
{
    string [] textList = text.Split("\n");
    foreach (string textItem in textList)
    {
        if (textItem.Contains("."))
        {
            continue;
        }
        else
        {
            file.WriteLine(textItem);
        }
    }
}
using (StreamWriter file = new StreamWriter("table_example.csv", false))
{
    string [] textList = text.Split("\n");
    foreach (string textItem in textList)
    {
        if (textItem.Contains("."))
        {
            continue;
        }
        else
        {
            file.WriteLine(textItem);
        }
    }
}

La sortie sera enregistrée dans un fichier CSV où chaque textItem sera une colonne.

Résumé

Cet article a montré comment extraire des données et des tableaux d'un document PDF à l'aide d'IronPDF. IronPDF offre plusieurs options utiles pour extraire du texte des fichiers PDF. Il fournit la méthode ExtractTextFromPage, qui permet l'extraction de données d'une page spécifique. IronPDF facilite également la conversion de différents formats en PDF, tels que les fichiers markdown ou les fichiers DOCX, et de PDF vers différents formats. Il est donc facile pour les développeurs d'intégrer la fonctionnalité PDF dans le processus de développement d'applications. En outre, il ne nécessite pas Adobe Acrobat Reader pour visualiser et modifier les documents PDF.

IronPDF est gratuit pour le développement et peut faire l'objet d'une licence pour un usage commercial. Il propose une licence d'essai gratuite pour tester IronPDF afin d'évaluer toute la fonctionnalité de la bibliothèque. Vous trouverez des informations plus détaillées sur ce lien.

Jordi Bardia
Ingénieur logiciel
Jordi maîtrise parfaitement Python, C# et C++. Lorsqu'il ne met pas à profit ses compétences chez Iron Software, il se consacre à la programmation de jeux. Partageant des responsabilités en matière de tests de produits, de développement de produits et de recherche, Jordi apporte une valeur ajoutée considérable à l'amélioration continue des produits. Cette expérience variée le stimule et l'engage, et il dit que c'est l'un des aspects qu'il préfère dans son travail chez Iron Software. Jordi a grandi à Miami, en Floride, et a étudié l'informatique et les statistiques à l'université de Floride.
< PRÉCÉDENT
Comment convertir un code QR en PDF
SUIVANT >
Application Windows C# de visualisation de PDF (Tutoriel)