Как да изтеглите текст от PDF файлове в .NET
Как да изтеглите текст от PDF файлове в .NET
Това ръководство обхваща извличане на текст от PDF страници с помощта на API-то за абсорбиране.
Предварителни условия
| Изискване | Детайли |
|---|---|
| Времето на изпълнение | .NET 8.0 или по-нови |
| Пакетът | dotnet add package Aspose.Pdf.Foss |
Изваждане на целия текст от страница
TextAbsorber събира целия текст на страницата в един ред. Създаване на Предайте го на: Page.Accept, и прочетете резултата от Text собственост. Това е най-простият подход, когато се нуждаете от обикновен текстови изходен без позиционни информация.
using var doc = Document.Open(pdfBytes);
var absorber = new TextAbsorber();
doc.Pages[1].Accept(absorber);
Console.WriteLine(absorber.Text);Извлечете структурирани текстови фрагменти
Когато имате нужда от позиция, шрифт и размер метаданни заедно с текста, употреба на TextFragmentAbsorber Всеки от тях. TextFragment разкрива своята граничните координати през 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})");
}Търсене с редовна експресия
Предаване на реджекс модел на: TextFragmentAbsorber да намерите съответстващ текст в Това е полезно за намиране на телефонни номера, дати или други данни. структурирани данни в рамките на даден документ.
var absorber = new TextFragmentAbsorber(@"\d{3}-\d{2}-\d{4}");
doc.Pages.Accept(absorber);
foreach (var f in absorber.TextFragments)
Console.WriteLine(f.Text);Основни класове
| Класът | Цел на дейността |
|---|---|
TextAbsorber | Извличане на всички текстови елементи като нишка |
TextFragmentAbsorber | Извличане на структуриран текст |
TextFragment | Текст с позиция и шрифт |
FontRepository | Търсене на шрифт |