API gratuit C# .NET pentru extragerea și analiza textului PDF
O bibliotecă .NET Open Source de top pentru extragerea textului, imaginilor, metadatelor și informațiilor despre structura PDF din fișiere PDF cu ușurință. Adăugați pagini noi, tabele, text și forme în PDF-uri.
Ce este biblioteca PdfPig?
PdfPig este o bibliotecă .NET open-source concepută pentru citirea, parsarea și extragerea conținutului din fișiere PDF în C#. A fost dezvoltată ca o portare a Apache PDFBox pentru ecosistemul .NET și este utilizată pe scară largă pentru extragerea textului din PDF, analiza documentelor și procesarea PDF la nivel scăzut. Suportă .NET Standard și multiple versiuni .NET, făcând-o foarte flexibilă pentru mediile de dezvoltare moderne. Biblioteca este foarte utilă pentru indexarea documentelor, motoarele de căutare, preprocesarea documentelor AI/ML, post-procesarea OCR, automatizarea facturilor, instrumente de accesibilitate PDF și sisteme de extragere a datelor.
Fișierele PDF sunt pretutindeni—contracte, rapoarte, facturi, eBook-uri, extrase bancare, lucrări de cercetare și formulare. Extracția de informații structurate din PDF-uri este adesea dificilă deoarece PDF este în primul rând un format de prezentare, nu un format de document semantic. PdfPig simplifică această problemă oferind dezvoltatorilor acces la text brut și cuvinte, pozițiile caracterelor și casetele de delimitare, fonturi și informații de stilizare, imagini și metadate și detalii despre aspectul documentului. Spre deosebire de multe biblioteci PDF care se concentrează în principal pe generarea de PDF-uri, PdfPig este specializat în citirea documentelor PDF existente. Acest lucru îl face o alegere excelentă pentru dezvoltatorii care construiesc motoare de căutare, fluxuri OCR, parsere de facturi, analizatoare de documente, instrumente de conformitate sau sisteme de extragere a conținutului.
Începeți cu PdfPig
Biblioteca PdfPig este disponibilă ca pachet NuGet. Prin urmare, se recomandă cu tărie utilizarea NuGet pentru a instala PdfPig în proiectul dumneavoastră. Vă rugăm să utilizați comanda următoare pentru o instalare cu succes.
Instalați PdfPig prin managerul de pachete NuGet
// Package Manager
Install-Package PdfPig
// .NET CLI
dotnet add package PdfPig
De asemenea, îl poți instala manual; descarcă fișierele ultimei versiuni direct din depozitul GitHub.
Extrageți text din documente PDF prin .NET
Unul dintre cele mai comune cazuri de utilizare ale PdfPig este extragerea textului simplu din documentele PDF. Dezvoltatorii de software pot deschide un PDF și pot citi textul pagină cu pagină sau pot extrage întregul conținut. Acest lucru este deosebit de util pentru indexarea în căutări, scanarea cuvintelor cheie și analiza conținutului. Iată un exemplu simplu care demonstrează cum dezvoltatorii de software pot extrage text din documente PDF în aplicații C# .NET. Mai întâi deschide fișierul PDF și iterează prin toate paginile, apoi citește conținutul textului extras.
Cum să extrageți text din documente PDF prin API-ul C#?
using UglyToad.PdfPig;
using (var document = PdfDocument.Open("sample.pdf"))
{
foreach (var page in document.GetPages())
{
string text = page.Text;
Console.WriteLine(text);
}
}
Formulare interactive și extragerea fișierelor încorporate
Biblioteca open source PdfPig suportă în mod nativ extragerea formularelor interactive Acrobat (AcroForms) și citirea fișierelor ascunse în atașamentele PDF. Aceasta permite dezvoltatorilor să verifice definițiile formularelor la nivel global, să itereze prin elementele interactive tipizate ale formularului (cum ar fi casetele de bifare, câmpurile de text sau butoanele), și să acceseze datele brute subiacente ale fișierelor încorporate în adnotările documentului pentru o interoperabilitate sistemică fără întreruperi.
Cum să extragi datele formularelor interactive prin intermediul bibliotecii C# .NET?
using System;
using System.Collections.Generic;
using UglyToad.PdfPig;
using UglyToad.PdfPig.AcroForms;
class Program
{
static void ExtractInteractiveContent(string pdfPath)
{
using (PdfDocument document = PdfDocument.Open(pdfPath))
{
// Extracting Interactive Form Data
if (document.TryGetForm(out AcroForm form))
{
foreach (var field in form.Fields)
{
Console.WriteLine($"Form Field Name: {field.Information.Name} | Type: {field.Type}");
}
}
// Extracting Embedded Documents/Attachments
if (document.Advanced.TryGetEmbeddedFiles(out IReadOnlyList embeddedFiles))
{
foreach (var file in embeddedFiles)
{
Console.WriteLine($"Found Attachment: {file.Name} ({file.Bytes.Count} bytes)");
// File.WriteAllBytes(file.Name, file.Bytes.ToArray()); // Save attachment locally
}
}
}
}
}
Îmbinare PDF multi-fișier fără probleme prin C#
Dincolo de extragerea conținutului, PdfPig oferă utilități simple de gestionare a documentelor. Prin utilizarea clasei PdfMerger, dezvoltatorii pot consolida structuri PDF separate și independente într-un singur tablou unificat de octeți de fișier. Aceasta oferă o modalitate eficientă de a concatena rapoarte programatice, facturi sau documente de extrase pentru clienți fără a adăuga dependențe externe voluminoase în pipeline-ul dvs. .NET. Exemplul următor demonstrează cum utilizatorii pot combina mai multe documente PDF în aplicații .NET.
Cum să îmbini mai multe fișiere PDF în aplicații C# .NET?
using System.IO;
using UglyToad.PdfPig.Writer;
class Program
{
static void MergeDocuments(string firstPdf, string secondPdf, string outputPdf)
{
// Consolidate files into a single continuous byte sequence
byte[] mergedFileBytes = PdfMerger.Merge(firstPdf, secondPdf);
// Output the combined file stream directly to disk
File.WriteAllBytes(outputPdf, mergedFileBytes);
}
}
Citiți metadatele PDF, formularele și adnotările
Dincolo de extragerea textului, biblioteca open source PdfPig a inclus funcționalități care expun metadatele documentului (titlu, autor, producător), câmpuri de formular interactive, hyperlinkuri și semne de carte. Acest lucru este de neprețuit pentru sistemele de clasificare a documentelor, procesarea automată a formularelor și indexarea conținutului, unde aveți nevoie atât de conținut, cât și de context.