Gratis C# .NET API for PDF-tekstuttrekk og analyse
Et ledende open source .NET-bibliotek for å hente ut tekst, bilder, metadata og PDF-strukturinformasjon fra PDF-filer med letthet. Legg til nye sider, tabeller, tekst og former i PDF-er.
Hva er PdfPig-biblioteket?
PdfPig er et åpen kildekode .NET-bibliotek designet for å lese, parse og hente ut innhold fra PDF-filer i C#. Det er utviklet som en port av Apache PDFBox for .NET-økosystemet og er mye brukt for PDF-tekstuttrekk, dokumentanalyse og lavnivå PDF-behandling. Det støtter .NET Standard og flere .NET-versjoner, noe som gjør det svært fleksibelt for moderne utviklingsmiljøer. Biblioteket er svært nyttig for dokumentindeksering, søkemotorer, AI/ML-dokumentforbehandling, OCR-etterbehandling, fakturaautomatisering, PDF-tilgjengelighetsverktøy og datainnhentingssystemer.
PDF-filer er overalt—kontrakter, rapporter, fakturaer, e-bøker, kontoutskrifter, forskningsartikler og skjemaer. Å trekke ut strukturert informasjon fra PDF-er er ofte vanskelig fordi PDF primært er et presentasjonsformat, ikke et semantisk dokumentformat. PdfPig forenkler dette problemet ved å gi utviklere tilgang til råtekst og ord, tegnposisjoner og avgrensningsbokser, skrifttyper og stilinformasjon, bilder og metadata samt dokumentlayoutdetaljer. I motsetning til mange PDF-biblioteker som hovedsakelig fokuserer på å generere PDF-er, er PdfPig spesialisert på å lese eksisterende PDF-dokumenter. Dette gjør det til et utmerket valg for utviklere som bygger søkemotorer, OCR-pipelines, fakturaparsere, dokumentanalysatorer, etterlevelsesverktøy eller innholdsuttrekkingssystemer.
Kom i gang med PdfPig
PdfPig-biblioteket er tilgjengelig som en NuGet-pakke. Det anbefales derfor på det sterkeste å bruke NuGet for å installere PdfPig i prosjektet ditt. Vennligst bruk følgende kommando for en vellykket installasjon.
Installer PdfPig via NuGet-pakkebehandler
// Package Manager
Install-Package PdfPig
// .NET CLI
dotnet add package PdfPig
Du kan også installere den manuelt; last ned de nyeste utgivelsesfilene direkte fra GitHub-depotet.
Uttrekk tekst fra PDF-dokumenter via .NET
En av de mest vanlige bruksområdene for PdfPig er å hente ut ren tekst fra PDF-dokumenter. Programvareutviklere kan åpne en PDF og lese tekst side for side eller hente ut hele innholdet. Dette er spesielt nyttig for søkeindeksering, nøkkelordskanning og innholdsanalyse. Her er et enkelt eksempel som viser hvordan programvareutviklere kan hente ut tekst fra PDF-dokumenter i C# .NET‑applikasjoner. Først åpnes PDF‑filen og itereres gjennom alle sider, deretter leses den ekstraherte tekstinnholdet.
Hvordan uttrekke tekst fra PDF-dokumenter via C#-API?
using UglyToad.PdfPig;
using (var document = PdfDocument.Open("sample.pdf"))
{
foreach (var page in document.GetPages())
{
string text = page.Text;
Console.WriteLine(text);
}
}
Interaktive skjemaer og uttrekk av innebygde filer
Det åpne kildekode‑biblioteket PdfPig støtter naturlig utvinning av interaktive Acrobat‑skjemaer (AcroForms) og lesing av filer skjult i PDF‑vedlegg. Det gjør det mulig for utviklere å sjekke etter skjedefinisjoner globalt, iterere gjennom typede interaktive skjemaelementer (som avmerkingsbokser, tekstfelt eller trykknapper), og få tilgang til den underliggende rå byte‑dataen for filer som er innebygd i dokumentannotasjoner for sømløs systeminteroperabilitet.
Hvordan hente ut interaktive skjemadata via C# .NET-biblioteket?
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
}
}
}
}
}
Sømløs sammenslåing av flere PDF-filer via C#
Utover innholdsuttrekk tilbyr PdfPig enkle verktøy for dokumenthåndtering. Ved å bruke PdfMerger-klassen kan utviklere konsolidere separate uavhengige PDF-strukturer til ett enkelt, samlet utdataarray av filbytes. Dette gir en effektiv måte å sette sammen programatiske rapporter, fakturaer eller kundestatementsdokumenter uten å legge til tunge, eksterne avhengigheter i .NET-pipelinen din. Følgende eksempel viser hvordan brukere kan kombinere flere PDF-dokumenter i .NET-applikasjoner.
Hvordan slå sammen flere PDF-filer i C# .NET-applikasjoner?
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);
}
}
Les PDF-metadata, skjemaer og annotasjoner
Utover tekstuttrekk har det åpne kildekodebiblioteket PdfPig inkludert funksjoner som eksponerer dokumentmetadata (tittel, forfatter, produsent), interaktive skjemafelter, hyperkoblinger og bokmerker. Dette er uvurderlig for dokumentklassifiseringssystemer, automatisert skjemabehandling og innholdsindeksering hvor du trenger både innhold og kontekst.