IRONPDF VERWENDEN

Lesen einer PDF-Tabelle in C#

Aktualisiert 3. März 2024
Teilen Sie:

Das Extrahieren von Daten aus einer PDF-Datei ist in C# eine ziemliche Herausforderung. Die Daten können in Form von Text, Bildern, Diagrammen, Schaubildern, Tabellen usw. vorliegen. Manchmal müssen Unternehmensanalysten Daten extrahieren, um Datenanalysen durchzuführen und auf der Grundlage dieser Ergebnisse Entscheidungen zu treffen. Die IronPDF C# PDF Library ist eine hervorragende Lösung für die Extraktion von Daten aus PDF-Dateien.

In diesem Artikel wird gezeigt, wie man mit der IronPDF Library Tabellendaten aus PDF-Dokumenten in C# extrahiert.

IronPDF - C# PDF-Bibliothek

IronPDF ist eine C# .NET Bibliothekdas Entwicklern das Lesen, Erstellen und Bearbeiten von PDF-Dokumenten in ihren Softwareanwendungen erleichtert. Die Chromium-Engine rendert PDF-Dokumente mit hoher Genauigkeit und Geschwindigkeit. Es ermöglicht Entwicklern die nahtlose Konvertierung von verschiedenen Formaten in PDF und umgekehrt. Es unterstützt das neueste .NET 7-Framework, sowie .NET Framework 6, 5, 4, .NET Core und Standard.

Darüber hinaus ermöglicht die IronPDF for .NET API Entwicklern, PDFs zu manipulieren und zu bearbeiten, Kopf- und Fußzeilen hinzuzufügen und Text, Bilder und Tabellen aus PDFs zu extrahieren.

Einige wichtige Merkmale sind

Schritte zum Extrahieren von Tabellendaten in C#; mit IronPDF Library

Um Tabellendaten aus PDF-Dokumenten zu extrahieren, müssen wir die folgenden Komponenten auf dem lokalen Computersystem installieren:

  1. Visual Studio - Visual Studio 2022 ist die offizielle IDE für die C#-Entwicklung und muss auf dem Computer installiert werden. Bitte laden Sie es herunter und installieren Sie es von der Visual Studio-Website.

  2. Projekt erstellen - Erstellen Sie eine Konsolenanwendung zum Extrahieren von Daten. Führen Sie die folgenden Schritte aus, um ein Projekt zu erstellen:

    • Öffnen Sie Visual Studio 2022 und klicken Sie dann auf die Schaltfläche Ein neues Projekt erstellen

      Lesen einer PDF-Tabelle in C#, Abbildung 1: Startbildschirm von Visual Studio

           **Startbildschirm von Visual Studio**
    • Wählen Sie als nächstes C# Console Application und klicken Sie auf next

      Lesen einer PDF-Tabelle in C#, Abbildung 2: Erstellen einer neuen Konsolenanwendung in Visual Studio

           **Erstellen einer neuen Konsolenanwendung in Visual Studio**
    • Geben Sie anschließend den Namen Ihres Projekts "ReadPDFTable " ein und klicken Sie auf "Weiter

      How to Read PDF Table in C#, Abbildung 3: Konfigurieren Sie die neu erstellte Anwendung

           **Konfigurieren Sie die neu erstellte Anwendung**
    • Wählen Sie ".NET Framework 6 Langzeitunterstützung" für Ihr Projekt.

      How to Read PDF Table in C#, Abbildung 4: Wählen Sie ein .NET-Framework

           **Wählen Sie ein .NET-Framework**
    • Klicken Sie auf die Schaltfläche Erstellen, und das Konsolenprojekt wird erstellt. Jetzt sind wir bereit, Tabellendaten aus PDF-Dokumenten programmatisch zu extrahieren.
  3. Install IronPDF - Es gibt 3 verschiedene Methoden, die IronPDF-Bibliothek zu installieren. Sie lauten wie folgt:

    • Verwendung von Visual Studio. Visual Studio enthält den NuGet Package Manager, mit dessen Hilfe sich alle NuGet-Pakete in C#-Anwendungen installieren lassen.

      • Klicken Sie im oberen Menü auf Werkzeuge, oder

      • Klicken Sie mit der rechten Maustaste auf das Projekt im Projektmappen-Explorer

        Lesen von PDF-Tabellen in C#, Abbildung 5: Werkzeuge und Verwaltung von NuGet-Paketen

                 **Werkzeuge und Verwaltung von NuGet-Paketen**
      • Sobald der NuGet Package Manager geöffnet ist, suchen Sie nach IronPDF und klicken Sie auf "Installieren", wie unten gezeigt:

        Lesen von PDF-Tabellen in C#, Abbildung 6: Werkzeuge und Verwaltung von NuGet-Paketen

                 **Werkzeuge und Verwaltung von NuGet-Paketen**
    • **Eine weitere einfache Möglichkeit, IronPDF herunterzuladen und zu installieren, ist der Besuch der entsprechenden Seite auf der NuGet-Website.

    • Download IronPDF .DLL Library. IronPDF kann auch von der IronPDF Website heruntergeladen werden. Klicken Sie auf: IronPDF DLL herunterladen um es herunterzuladen und zu installieren. Denken Sie daran, dass Sie die .DLL in Ihrem Projekt referenzieren müssen, um sie zu verwenden.

Ein PDF-Dokument mit Tabellendaten erstellen

Bevor Sie etwas erstellen, müssen Sie den IronPDF-Namensraum in die Datei einfügen und den Lizenzschlüssel für die Verwendung der "ExtractText"-Methoden der IronPDF-Bibliothek festlegen.

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#

In diesem Fall wird aus einem HTML-String, der eine Tabelle enthält, ein PDF-Dokument erstellt, aus dem dann mit IronPDF die Daten extrahiert werden. Der HTML-Code wird in einer String-Variablen gespeichert und sieht wie folgt aus:

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#

Als nächstes wird die chromePdfRenderer wird verwendet, um eine PDF-Datei aus einer HTML-Zeichenkette zu erstellen. Der Code lautet wie folgt:

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#

Die speichern als methode speichert die pdfDocument objekt in eine PDF-Datei mit dem Namen "table_example.pdf ". Die gespeicherte Datei ist unten abgebildet:

How to Read PDF Table in C#, Abbildung 7: Suche nach IronPDF in NuGet Package Manager UI

Suche nach IronPDF in der NuGet Package Manager UI

Extrahieren von Tabellendaten aus PDF-Dokumenten mit IronPDF

Um Daten aus PDF-Tabellen zu extrahieren, öffnen Sie das Dokument mit dem PdfDocument-Objekt und verwenden dann die extractAllText methode, um die Daten für die weitere Analyse abzurufen. Der folgende Code veranschaulicht, wie diese Aufgabe gelöst werden kann:

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#

Der obige Code analysiert das gesamte PDF-Dokument mit der Methode ExtractAllText und gibt die extrahierten Daten, einschließlich der Tabellendaten, in einer String-Variablen zurück. Der Wert der Variablen kann dann angezeigt oder zur späteren Verwendung in einer Datei gespeichert werden. Der folgende Code zeigt sie auf dem Bildschirm an:

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#

How to Read PDF Table in C#, Abbildung 8: Die PDF-Datei zu extrahieren Text

Die PDF-Datei zum Extrahieren von Text

Extrahieren tabellarischer Daten aus extrahiertem Textinhalt

C# bietet eine Methode String.Split, die dabei hilft, die Zeichenkette auf der Grundlage eines Trennzeichens aufzuteilen. Mit dem folgenden Code können Sie die Ausgabe auf Tabellendaten beschränken.

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#

Dieses einfache Codebeispiel hilft dabei, nur die Daten der Tabellenzellen aus dem extrahierten Text zu extrahieren. Zunächst werden die Textzeilen aufgeteilt und in einem String-Array gespeichert. Dann wird jedes Array-Element durchlaufen, und die Elemente mit einem Punkt "." am Ende werden übersprungen. In den meisten Fällen werden nur die tabellarischen Daten aus den extrahierten Daten abgerufen, obwohl auch andere Zeilen abgerufen werden können. Die Ausgabe lautet wie folgt:

How to Read PDF Table in C#, Abbildung 9: Die Konsole zeigt extrahierte Texte an

Die Konsole zeigt extrahierte Texte an

Aus der obigen Abbildung geht hervor, dass die Formatierung der Tabellendaten und die logische Struktur in der Ausgabe der Methode Console.WriteLine erhalten bleiben. Weitere Einzelheiten zum Extrahieren von Daten aus PDF-Dokumenten mit IronPDF finden Sie in diesem code-Beispiel.

Die Ausgabe kann auch in einer CSV-Datei gespeichert werden, die später für weitere Datenanalysen formatiert und bearbeitet werden kann. Der Code lautet wie folgt:

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#

Die Ausgabe wird in einer CSV-Datei gespeichert, wobei jedes "textItem" eine Spalte darstellt.

Zusammenfassung

Dieser Artikel zeigt, wie man mit IronPDF Daten und Tabellen aus einem PDF-Dokument extrahiert. IronPDF bietet mehrere nützliche Optionen für die Extraktion von Text aus PDF-Dateien. Sie bietet die extrahiereTextVonSeite methode, die die Extraktion von Daten aus einer bestimmten Seite ermöglicht. IronPDF ermöglicht auch die Konvertierung verschiedener Formate in PDF, wie z. B markdown-Dateien oder DOCX-Dateien und von PDF in verschiedene Formate. Dies macht es Entwicklern leicht, PDF-Funktionen in die Anwendungsentwicklung zu integrieren. Außerdem benötigt es keinen Adobe Acrobat Reader, um PDF-Dokumente anzuzeigen und zu bearbeiten.

IronPDF ist für die Entwicklung kostenlos und kann für die kommerzielle Nutzung lizenziert werden. Sie bietet eine kostenlose Testlizenz um die volle Funktionalität der Bibliothek zu testen. Ausführlichere Informationen finden Sie unter diesem Link.

< PREVIOUS
QR-Code in PDF umwandeln
NÄCHSTES >
PDF Viewer C# Windows Anwendung (Tutorial)

Sind Sie bereit, loszulegen? Version: 2024.10 gerade veröffentlicht

Gratis NuGet-Download Downloads insgesamt: 11,308,499 Lizenzen anzeigen >