PdfPig: Avanceret PDF-tekstudtrækning til .NET
Læs og analyser PDF-indhold uden afhængigheder - tekst, positioner, skrifttyper og metadata
Hvad er PdfPig?
PdfPig er et open source .NET-bibliotek, der fokuserer på at udtrække indhold fra PDF-filer uden omkostningerne ved native afhængigheder. I modsætning til PDF-generatorer specialiserer PdfPig sig i at læse eksisterende dokumenter for at få adgang til tekst, skrifttypeinformation, positionsdata og dokumentstruktur. Det er særligt værdifuldt til datamining, indholdsanalyse og dokumentbehandlingspipelines.
Nøglefordele ved PdfPig inkluderer:
- Ingen afhængigheder: Ren C#-implementering
- Lavniveau-adgang: Præcis tekstpositionering og skrifttypemetrics
- Hukommelseseffektiv: Håndterer store dokumenter med minimal overhead
- OCR-klar: Udtræk tekst med afgrænsningsbokse til analyse
- MIT-licenseret: Gratis til kommerciel brug
Ideel til dokumentanalyse, tekstudtrækning og PDF-indholdsbehandling.
Hvorfor vælge PdfPig?
- Nøjagtighed: Håndterer komplekse PDF-tekstlayout korrekt
- Ydeevne: Benchmarket hurtigere end lignende .NET-biblioteker
- Transparens: Adgang til rå PDF-strukturer, når det er nødvendigt
- Aktiv udvikling: Regelmæssige opdateringer siden 2018
- Tværgående platform: Virker på .NET Standard 2.0+
Installation
PdfPig er tilgængelig via NuGet til nem integration:
Package Manager Console
Install-Package PdfPig
.NET CLI
dotnet add package PdfPig
Systemkrav: .NET Standard 2.0-kompatibel runtime
Kodeeksempler
Praktiske eksempler på PdfPigs funktionaliteter:
Eksempel 1: Grundlæggende tekstudtrækning
Dette eksempel viser, hvordan man åbner et PDF-dokument og udtrækker alt tekstindhold, mens læserækkefølgen bevares. PdfPig giver adgang til hvert enkelt bogstav med dets præcise position i dokumentet, hvilket muliggør avanceret layoutanalyse ud over simpel tekstudtrækning.
Output inkluderer:
- Rå tekstindhold i læserækkefølge
- Sidenumre for hvert tekstsegment
- Grundlæggende skrifttypeinformation
Eksempel 2: Avanceret positionsanalyse
PdfPig udmærker sig ved at give præcise positionsdata for tekstelementer. Dette eksempel viser, hvordan man udtrækker ord med deres afgrænsningsbokse, hvilket muliggør opgaver som tabeldetektion, formularbehandling og indholdsregionsanalyse.
Eksempel 3: Skrifttype- og metadataudtrækning
Ud over tekstindhold giver PdfPig adgang til dokumentmetadata og detaljeret skrifttypeinformation. Dette eksempel demonstrerer udtrækning af dokumentegenskaber og analyse af skrifttypebrug i hele PDF'en.
Avancerede funktioner
PdfPig understøtter professionel PDF-analyse:
- Billedudtrækning: Adgang til indlejrede billeder:
Billedudtrækning
using var document = PdfDocument.Open("fil.pdf"); foreach (var page in document.GetPages()) { foreach (var image in page.GetImages()) { var bytes = image.RawBytes; // Behandling af billeddata } }
- Bogmærkenavigation: Adgang til dokumentoversigten:
Bogmærker
var bookmarks = document.GetBookmarks(); foreach (var bookmark in bookmarks) { Console.WriteLine($"{bookmark.Title} - Side {bookmark.PageNumber}"); }
- Krypterede PDF'er: Håndtering af adgangskodebeskyttede filer:
Krypteret PDF
var options = new ParsingOptions { Password = "secure123" }; using var doc = PdfDocument.Open("krypteret.pdf", options);
PdfPig vs PdfSharp
Her er de 5 vigtigste forskelle mellem PdfPig og PDFsharp:
- Primær funktion: PdfPig specialiserer sig i at læse/udtrække tekst, positioner og metadata. PDFsharp fokuserer på at oprette/redigere PDF-dokumenter
- Tekst vs grafik: PdfPig udtrækker tekst med pixelperfekt præcision (inklusive koordinater). PDFsharp er optimeret til at tegne tekst/figurer (rapporter, fakturaer, formularer)
- Dokumentadgang: PdfPig analyserer eksisterende PDF'er, mens PDFsharp kan ændre sider, tilføje indhold, flette filer
- Avancerede funktioner PdfPig afslører skrifttypedetaljer, afgrænsningsbokse og dokumentstruktur, mens PDFsharp understøtter PDF/A-standarder, billeder og kryptering
- Brugssager PdfPig understøtter datamining, OCR-forbehandling, indholdsanalyse, mens PDFsharp understøtter rapportgenerering, PDF-manipulation, formularudfyldning
Konklusion
PdfPig leverer uovertruffen PDF-indholdsadgang til .NET-udviklere. Ideel til:
- Dataudtrækning: Uddragning af indhold fra rapporter og dokumenter
- Dokumentanalyse: Forståelse af PDF-struktur og layout
- Tilgængelighed: Konvertering af PDF-indhold til andre formater
- Forbehandling: Forberedelse af dokumenter til OCR eller ML
Med sit fokus på præcis indholdsudtrækning og lav hukommelsesforbrug er PdfPig det foretrukne valg til PDF-analyse i .NET.