Hoe tekst uit PDF's te extraheren in .NET

Hoe tekst uit PDF's te extraheren in .NET

Hoe tekst uit PDF’s te extraheren in .NET

Deze gids behandelt tekstelextractie van PDF-pagina’s met de absorber API.


Vereisten

VereisteDetail
Runtime.NET 8.0 of later
Pakketdotnet add package Aspose.Pdf.Foss

Alle tekst van een pagina extraheren

TextAbsorber verzamelt alle tekst op een pagina in één enkele string. Maak een instance, geef deze door aan Page.Accept, en lees het resultaat uit de Text eigenschap. Dit is de eenvoudigste aanpak wanneer je platte‑tekstoutput nodig hebt zonder positionele informatie.

using var doc = Document.Open(pdfBytes);
var absorber = new TextAbsorber();
doc.Pages[1].Accept(absorber);
Console.WriteLine(absorber.Text);

Gestructureerde tekstfragmenten extraheren

Wanneer je positie‑, lettertype‑ en grootte‑metadata naast de tekst nodig hebt, gebruik dan TextFragmentAbsorber. Elke TextFragment geeft zijn begrenzende coördinaten weer via de Position‑eigenschap.

var absorber = new TextFragmentAbsorber();
doc.Pages[1].Accept(absorber);

foreach (var fragment in absorber.TextFragments)
{
    Console.WriteLine($"{fragment.Text} at ({fragment.Position.XIndent}, {fragment.Position.YIndent})");
}

Zoeken met een reguliere expressie

Geef een regex‑patroon door aan TextFragmentAbsorber om overeenkomende tekst over
alle pagina’s. Dit is handig voor het lokaliseren van telefoonnummers, datums, of andere
gestructureerde gegevenspatronen binnen een document.

var absorber = new TextFragmentAbsorber(@"\d{3}-\d{2}-\d{4}");
doc.Pages.Accept(absorber);
foreach (var f in absorber.TextFragments)
    Console.WriteLine(f.Text);

Belangrijke klassen

KlasseDoel
TextAbsorberAlle tekst extraheren als een string
TextFragmentAbsorberGestructureerde tekstelextractie
TextFragmentTekst met positie en lettertype
FontRepositoryLettertype opzoeken

Zie ook

 Nederlands