using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
Das Extrahieren von Daten aus einer PDF-Datei kann in C# eine ziemliche Herausforderung sein. 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 zum Extrahieren von Daten aus PDF-Dateien.
In diesem Artikel wird gezeigt, wie man mit der IronPDF Library Tabellendaten aus PDF-Dokumenten in C# extrahiert.
IronPDF ist eine C# .NET-Bibliothekslösung zur PDF-Erstellung in .NET, die Entwicklern hilft, PDF-Dokumente in ihren Softwareanwendungen einfach zu lesen, zu erstellen und zu bearbeiten. 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.
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:
Visual Studio - Visual Studio 2022 ist die offizielle IDE für die C#-Entwicklung und muss auf dem Computer installiert sein. Bitte laden Sie es von der Visual Studio-Website herunter und installieren Sie es.
Projekt erstellen - Erstellen Sie eine Konsolenanwendung zur Datenextraktion. 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 Neues Projekt erstellen.
Startbildschirm von Visual Studio
Wählen Sie als nächstes C# Console Application und klicken Sie auf next
Erstellen Sie eine neue Konsolenanwendung in Visual Studio
Geben Sie als nächstes den Namen Ihres Projekts "ReadPDFTable" ein und klicken Sie auf Weiter
Konfigurieren Sie die neu erstellte Anwendung
Wählen Sie ".NET Framework 6 Langzeitunterstützung" für Ihr Projekt.
Wählen Sie ein .NET Framework aus
Klicken Sie auf die Schaltfläche Erstellen und das Konsolenprojekt wird erstellt. Jetzt sind wir bereit, Tabellendaten aus PDF-Dokumenten programmatisch zu extrahieren.
Installieren Sie IronPDF - Es gibt 3 verschiedene Methoden, um 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
Tools & NuGet-Pakete verwalten
- Sobald der NuGet Package Manager geöffnet ist, suchen Sie nach IronPDF und klicken Sie auf "Installieren", wie unten gezeigt:
Tools & NuGet-Pakete verwalten
Laden Sie das NuGet-Paket direkt herunter. Eine weitere einfache Möglichkeit, IronPDF herunterzuladen und zu installieren, ist der Besuch der NuGet-Paketseite.
IronPDF .DLL-Bibliothek herunterladen. IronPDF kann auch von der offiziellen IronPDF-Website heruntergeladen werden. Denken Sie daran, dass Sie die .DLL in Ihrem Projekt referenzieren müssen, um sie zu verwenden.
Ein PDF-Dokument mit Tabellendaten erstellen
Bevor etwas erstellt wird, muss der IronPDF-Namespace in die Datei eingefügt werden, und der Lizenzschlüssel muss gesetzt werden, um die ExtractText-Methoden aus der IronPDF-Bibliothek zu verwenden.
using IronPdf;
License.LicenseKey = "YOUR-TRIAL/PURCHASED-LICENSE-KEY";
using IronPdf;
License.LicenseKey = "YOUR-TRIAL/PURCHASED-LICENSE-KEY";
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:
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>"
Als nächstes wird der ChromePdfRenderer verwendet, um aus einem HTML-String ein PDF 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")
Die Methode SaveAs speichert das PdfDocument-Objekt in einer PDF-Datei mit dem Namen "table_example.pdf". Die gespeicherte Datei ist unten abgebildet:
Suche nach IronPDF in der NuGet-Paketmanager-Benutzeroberfläche
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 Sie dann die ExtractAllText-Methode, um die Daten für weitere Analysen 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()
Der obige Code analysiert das gesamte PDF-Dokument mithilfe der ExtractAllText-Methode und gibt die extrahierten Daten, einschließlich der tabellarischen Daten, 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)
Die PDF-Datei zum Extrahieren von Text
Extrahieren tabellarischer Daten aus extrahiertem Textinhalt
C# bietet eine Methode String.Split, die hilft, den String basierend auf einem Trennzeichen zu teilen. Mit dem folgenden Code können Sie die Ausgabe auf Tabellendaten beschränken.
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
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:
Die Konsole zeigt extrahierte Texte an
Anhand des obigen Screenshots ist zu erkennen, dass die Tabellenformatierung und die logische Struktur in der Ausgabe der Console.WriteLine-Methode erhalten bleiben. Weitere Details, wie Sie Daten aus PDF-Dokumenten mit IronPDF extrahieren können, finden Sie in diesem Codebeispiel zum Extrahieren von Daten aus PDF in C#.
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
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. Es bietet die ExtractTextFromPage-Methode, die die Extraktion von Daten aus einer bestimmten Seite ermöglicht. IronPDF ermöglicht auch die Umwandlung verschiedener Formate in PDF, wie zum Beispiel 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. Es bietet eine kostenlose Testlizenz für die Erprobung von IronPDF, um die volle Funktionalität der Bibliothek zu testen. Ausführlichere Informationen finden Sie unter diesem Link.
Regan schloss sein Studium an der University of Reading mit einem BA in Elektrotechnik ab. Bevor er zu Iron Software kam, konzentrierte er sich in seinen früheren Jobs auf einzelne Aufgaben. Was ihm bei Iron Software am meisten Spaß macht, ist das Spektrum der Aufgaben, die er übernehmen kann, sei es im Vertrieb, im technischen Support, in der Produktentwicklung oder im Marketing. Es macht ihm Spaß, die Art und Weise zu verstehen, wie Entwickler die Bibliothek von Iron Software nutzen, und dieses Wissen zu nutzen, um die Dokumentation und die Produkte kontinuierlich zu verbessern.