UTILISATION D'IRONPDF

Comment lire un tableau PDF en C#

Mise à jour mars 3, 2024
Partager:

Extraire des données d'un fichier PDF est 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 IronPDF C# est une solution idéale pour extraire des données de 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 bibliothèque C# .NETce logiciel permet aux développeurs de lire, de créer et d'éditer 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 à partir du site Site web de Visual Studio.

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

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

      Comment lire un tableau PDF en C#, Figure 1 : L'écran de démarrage de Visual Studio

           **L'é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 : Configuration de l'application nouvellement créée

           **Configurer l'application nouvellement créée**
    • Choisissez " .NET Framework 6 long-term support " pour votre projet.

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

           **Sélectionner un Framework .NET**
    • Cliquez sur le bouton Créer, et le projet de console sera créé. Nous sommes maintenant prêts à extraire par programme des données de tableaux à partir de documents PDF.
  3. Installation d'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 paquets NuGet

                 **Outils et gestion des paquets 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 gestion des paquets NuGet

                 **Outils et gestion des paquets NuGet**
    • **Une autre façon de télécharger et d'installer IronPDF est de visiter sa page sur le site Web de la Commission européenne Site web de NuGet.

    • Télécharger la bibliothèque .DLL d'IronPDF IronPDF peut également être téléchargé à partir du site Web d'IronPDF. Cliquez sur : Téléchargement de la DLL IronPDF pour le télécharger et l'installer. 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 faut ajouter l'espace de noms IronPDF dans le fichier et 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";
Imports IronPdf

License.LicenseKey = "YOUR-TRIAL/PURCHASED-LICENSE-KEY"
VB   C#

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>";
Dim HTML As String = "<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>"
VB   C#

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");
Dim renderer As New ChromePdfRenderer()
Dim pdfDocument As PdfDocument = renderer.RenderHtmlAsPdf(HTML)
pdfDocument.SaveAs("table_example.pdf")
VB   C#

Les SaveAs enregistrera la méthode PdfDocument vers un fichier PDF nommé "table_example.pdf ". Le fichier enregistré est présenté ci-dessous :

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

Recherchez IronPDF dans l'interface utilisateur du gestionnaire de paquets NuGet

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

Pour extraire des données de tableaux PDF, ouvrez le document en utilisant l'objet PdfDocument, puis utilisez la fonction ExtraireToutTexte pour récupérer les données en vue d'une analyse plus approfondie. 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();
Dim pdfDocument As New PdfDocument("table_example.pdf")
Dim text As String = pdfDocument.ExtractAllText()
VB   C#

Le code ci-dessus analyse l'ensemble du document PDF à l'aide de 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);
Imports Microsoft.VisualBasic

Console.WriteLine("The extracted Text is:" & vbLf & text)
VB   C#

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

Le fichier PDF à extraire du texte

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

C# fournit une méthode String.Split qui permet de 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);
    }
}
Imports Microsoft.VisualBasic

Dim textList() As String = text.Split(vbLf)
For Each textItem As String In textList
	If textItem.Contains(".") Then
		Continue For
	Else
		Console.WriteLine(textItem)
	End If
Next textItem
VB   C#

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

La capture d'écran ci-dessus montre 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 trouverez plus de détails sur la manière d'extraire des données de documents PDF à l'aide d'IronPDF dans ce document exemple de code.

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);
        }
    }
}
Imports Microsoft.VisualBasic

Using file As New StreamWriter("table_example.csv", False)
	Dim textList() As String = text.Split(vbLf)
	For Each textItem As String In textList
		If textItem.Contains(".") Then
			Continue For
		Else
			file.WriteLine(textItem)
		End If
	Next textItem
End Using
VB   C#

Le résultat sera sauvegardé 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 le ExtraitTexteDePage qui permet d'extraire des données d'une page spécifique. IronPDF facilite également la conversion de différents formats en PDF tels que fichiers markdown ou 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 fournit un licence d'essai gratuite pour tester toutes les fonctionnalités de la bibliothèque. Vous trouverez des informations plus détaillées sur ce lien.

< PRÉCÉDENT
Comment convertir un code QR en PDF
SUIVANT >
Application Windows C# de visualisation de PDF (Tutoriel)