Cara Mengekstrak Teks dari PDF dalam .NET
Cara Mengekstrak Teks dari PDF dalam .NET
Panduan ini merangkumi pengekstrakan teks daripada halaman PDF menggunakan absorber API.
Keperluan
| Keperluan | Butiran |
|---|---|
| Masa Jalan | .NET 8.0 atau kemudian |
| Pakej | dotnet add package Aspose.Pdf.Foss |
Ekstrak semua teks daripada halaman
TextAbsorber mengumpulkan semua teks pada halaman menjadi satu rentetan. Cipta satu
instance, hantarkan kepada Page.Accept, dan baca hasilnya daripada property Text.
Ini adalah pendekatan paling mudah apabila anda memerlukan output teks biasa tanpa maklumat kedudukan.
using var doc = Document.Open(pdfBytes);
var absorber = new TextAbsorber();
doc.Pages[1].Accept(absorber);
Console.WriteLine(absorber.Text);Ekstrak fragmen teks berstruktur
Apabila anda memerlukan metadata kedudukan, fon, dan saiz bersama teks, gunakan TextFragmentAbsorber sebaliknya. Setiap TextFragment mendedahkan koordinat sempadannya melalui sifat 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})");
}Cari dengan ekspresi biasa
Berikan corak regex kepada TextFragmentAbsorber untuk mencari teks yang sepadan merentasi
semua halaman. Ini berguna untuk mencari nombor telefon, tarikh, atau corak data berstruktur lain dalam dokumen.
var absorber = new TextFragmentAbsorber(@"\d{3}-\d{2}-\d{4}");
doc.Pages.Accept(absorber);
foreach (var f in absorber.TextFragments)
Console.WriteLine(f.Text);Kelas Utama
| Kelas | Tujuan |
|---|---|
TextAbsorber | Ekstrak semua teks sebagai rentetan |
TextFragmentAbsorber | Ekstraksi teks berstruktur |
TextFragment | Teks dengan kedudukan dan fon |
FontRepository | Carian fon |