PdfPig: Pengekstrakan Teks PDF Lanjutan untuk .NET
Baca dan analisis kandungan PDF tanpa kebergantungan - teks, posisi, fon dan metadata
Apa itu PdfPig?
PdfPig ialah pustaka .NET sumber terbuka yang fokus pada pengekstrakan kandungan dari fail PDF tanpa kebergantungan natif. Berbeza dengan penjana PDF, PdfPig khusus untuk membaca dokumen sedia ada untuk mengakses teks, maklumat fon, data posisi, dan struktur dokumen. Ia amat berguna untuk perlombongan data, analisis kandungan, dan pemprosesan dokumen.
Kelebihan utama PdfPig:
- Tiada kebergantungan: Implementasi tulen C#
- Akses peringkat rendah: Kedudukan teks dan metrik fon yang tepat
- Cekap memori: Mengendalikan dokumen besar dengan penggunaan minima
- Sedia untuk OCR: Ekstrak teks dengan kotak sempadan untuk analisis
- Lesen MIT: Percuma untuk kegunaan komersial
Sesuai untuk analisis dokumen, pengekstrakan teks, dan pemprosesan kandungan PDF.
Mengapa Pilih PdfPig?
- Ketepatan: Mengendalikan susun atur teks PDF kompleks dengan betul
- Prestasi: Lebih pantas berbanding pustaka .NET serupa
- Ketelusan: Akses struktur PDF mentah bila diperlukan
- Pembangunan aktif: Kemas kini berkala sejak 2018
- Pelbagai platform: Berfungsi pada .NET Standard 2.0+
Pemasangan
PdfPig tersedia melalui NuGet untuk integrasi mudah:
Package Manager Console
Install-Package PdfPig
.NET CLI
dotnet add package PdfPig
Keperluan Sistem: Runtutan yang serasi dengan .NET Standard 2.0
Contoh Kod
Contoh praktikal keupayaan PdfPig:
Contoh 1: Pengekstrakan Teks Asas
Contoh ini menunjukkan cara membuka dokumen PDF dan mengekstrak semua teks sambil mengekalkan susunan bacaan. PdfPig menyediakan akses kepada setiap aksara dengan posisi tepat dalam dokumen.
Output termasuk:
- Teks mentah dalam susunan bacaan
- Nombor halaman untuk setiap segmen teks
- Maklumat fon asas
Contoh 2: Analisis Posisi Lanjutan
PdfPig menyediakan data posisi tepat untuk elemen teks. Contoh ini menunjukkan cara mengekstrak perkataan dengan kotak sempadannya.
Contoh 3: Pengekstrakan Fon dan Metadata
Selain teks, PdfPig menyediakan akses kepada metadata dokumen dan maklumat fon terperinci.
Ciri Lanjutan
PdfPig menyokong analisis PDF profesional:
- Pengekstrakan imej: Akses imej terbenam:
Pengekstrakan Imej
using var document = PdfDocument.Open("file.pdf"); foreach (var page in document.GetPages()) { foreach (var image in page.GetImages()) { var bytes = image.RawBytes; // Proses data imej } }
- Navigasi penanda buku: Akses rangka dokumen:
Penanda Buku
var bookmarks = document.GetBookmarks(); foreach (var bookmark in bookmarks) { Console.WriteLine($"{bookmark.Title} - Halaman {bookmark.PageNumber}"); }
- PDF disulitkan: Mengendalikan fail dilindungi kata laluan:
PDF Disulitkan
var options = new ParsingOptions { Password = "secure123" }; using var doc = PdfDocument.Open("encrypted.pdf", options);
PdfPig vs PdfSharp
5 perbezaan utama antara PdfPig dan PDFsharp:
- Fungsi Utama: PdfPig khusus untuk membaca/mengekstrak teks dan metadata. PDFsharp fokus pada mencipta/mengedit PDF
- Teks vs Grafik: PdfPig mengekstrak teks dengan ketepatan piksel. PDFsharp dioptimumkan untuk melukis teks/bentuk
- Akses Dokumen: PdfPig menganalisis PDF sedia ada, manakala PDFsharp boleh mengubah halaman
- Ciri Lanjutan: PdfPig mendedahkan butiran fon dan struktur dokumen, PDFsharp menyokong piawaian PDF/A
- Kegunaan: PdfPig untuk perlombongan data, PDFsharp untuk penjanaan laporan
Kesimpulan
PdfPig menyediakan akses kandungan PDF yang unggul untuk pembangun .NET. Sesuai untuk:
- Pengekstrakan data: Perlombongan kandungan dari laporan
- Analisis dokumen: Memahami struktur PDF
- Kebolehcapaian: Menukar kandungan PDF ke format lain
- Prapemprosesan: Penyediaan dokumen untuk OCR atau ML
Dengan fokus pada ketepatan pengekstrakan dan penggunaan memori rendah, PdfPig ialah pilihan utama untuk analisis PDF dalam .NET.
Produk Serupa
- API EasyOCR – Pengenalan Aksara Optik Komprehensif dalam Python
- API Python PyMuPDF | Penghuraian dan Pengekstrakan PDF Lanjutan
- docTR API - Pengenalpastian Aksara Optik (OCR) dalam Python
- PaddleOCR API – Pengiktirafan Aksara Optik Berprestasi Tinggi
- pdfminer.six Perpustakaan Python | Ekstrak Teks daripada PDF