Ako extrahovať text z PDF v .NET

Ako extrahovať text z PDF v .NET

Ako extrahovať text z PDF v .NET

Tento sprievodca pokrýva extrakciu textu z PDF stránok pomocou absorber API.


Požiadavky

PožiadavkaDetail
Čas behu.NET 8.0 alebo novší
Balíkdotnet add package Aspose.Pdf.Foss

Extrahovať všetok text zo stránky

TextAbsorber zhromažďuje celý text na stránke do jedného reťazca. Vytvorte inštanciu, odovzdajte ju do Page.Accept a prečítajte výsledok z vlastnosti Text. Toto je najjednoduchší prístup, keď potrebujete výstup v čistom texte bez informácií o pozícii.

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

Extrahovať štruktúrované textové fragmenty

Keď potrebujete metadáta o pozícii, fonte a veľkosti spolu s textom, použite TextFragmentAbsorber namiesto toho. Každý TextFragment odhaľuje svoje ohraničujúce súradnice prostredníctvom vlastnosti Position.

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})");
}

Vyhľadávanie pomocou regulárneho výrazu

Zadajte regex vzor do TextFragmentAbsorber, aby ste našli zodpovedajúci text naprieč všetkými stránkami. Toto je užitočné pri vyhľadávaní telefónnych čísel, dátumov alebo iných štruktúrovaných dátových vzorov v dokumente.

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

Kľúčové triedy

TriedaÚčel
TextAbsorberExtrahovať celý text ako reťazec
TextFragmentAbsorberŠtruktúrovaná extrakcia textu
TextFragmentText s pozíciou a fontom
FontRepositoryVyhľadávanie fontu

Pozri tiež

 Slovenčina