Cara Mengautomatikkan Pengekstrakan Data dari PDF Multi-Page dengan Aspose.OCR
PDF berbilang halaman dari scanner, arkib, atau aliran kerja perusahaan sering memegang jumlah besar teks dan tabel yang tidak dapat dicari. ekstraksi manual lambat dan tidak skala. Aspose.OCR untuk .NET mengautomatikkan ekstrak teks, tabel, dan struktur dari panjang, PDF kompleks dengan kode minimum.
Masalah dunia nyata
Arkib hukum, keuangan, dan akademis secara teratur berurusan dengan PDF yang dipindai berbilang halaman yang berisi ratusan halaman. teks manual dan ekstraksi data adalah error-prone dan kerja intensif.
Penyelesaian Overview
Aspose.OCR untuk .NET dapat proses batch dan mengekstrak teks / tabel dari setiap halaman dalam PDF berbilang halaman. Anda dapat menentukan rangkaian halaman, format ekspor, dan integrasi otomatis dengan aplikasi bisnis atau arsip digital.
Persyaratan
- Visual Studio 2019 atau lebih baru
- .NET 6.0 atau lebih baru (atau .Net Framework 4.6.2+)
- Aspose.OCR untuk .NET dari NuGet
- Keterampilan Programming C#
PM> Install-Package Aspose.OCR
Implementasi langkah demi langkah
Langkah 1: Menginstal dan mengkonfigurasi Aspose.OCR
using Aspose.OCR;
Langkah 2: Tambahkan file PDF berbilang halaman
OcrInput input = new OcrInput(InputType.PDF);
input.Add("archive.pdf"); // all pages
input.Add("report.pdf", 5, 10); // pages 5-14
Langkah 3: Mengkonfigurasi pengaturan pengenalan dan peringkat halaman
RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
settings.DetectAreasMode = DetectAreasMode.AUTO;
Langkah 4: Mengekstrak teks dan tabel dari setiap halaman
AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);
Langkah 5: Hasil ekspor untuk setiap halaman
int page = 1;
foreach (RecognitionResult result in results)
{
result.Save($"output_page_{page}.txt", SaveFormat.Text);
result.Save($"output_page_{page}.xlsx", SaveFormat.Xlsx);
result.Save($"output_page_{page}.json", SaveFormat.Json);
page++;
}
Langkah 6: Mengatasi kesilapan dan validasi data
try
{
AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
Langkah 7: Mengoptimalkan file besar dan pekerjaan batch
- Memproses PDF dalam folder per direktori
- Menggunakan pemrosesan halaman selektif untuk kecepatan
- Penggunaan memori / CPU
foreach (string file in Directory.GetFiles("./pdfs", "*.pdf"))
{
input.Add(file);
}
Langkah 8 : Contoh Lengkap
using Aspose.OCR;
using System;
using System.Collections.Generic;
using System.IO;
class Program
{
static void Main(string[] args)
{
try
{
OcrInput input = new OcrInput(InputType.PDF);
input.Add("archive.pdf");
input.Add("report.pdf", 5, 10);
RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
settings.DetectAreasMode = DetectAreasMode.AUTO;
AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);
int page = 1;
foreach (RecognitionResult result in results)
{
result.Save($"output_page_{page}.txt", SaveFormat.Text);
result.Save($"output_page_{page}.xlsx", SaveFormat.Xlsx);
result.Save($"output_page_{page}.json", SaveFormat.Json);
page++;
}
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
}
}
Menggunakan kasus dan aplikasi
Undang-Undang dan Mematuhi Arsip
Mengekstrak konten lengkap dari kontrak, pendaftaran pengadilan, atau rekaman pemerintah untuk pencarian dan pematuhan.
Arsip Akademik dan Penyelidikan
Digitalisasi dan membagi jurnal, tesis, atau tabel data untuk analisis atau e-learning.
aliran kerja keuangan dan audit
Pengekstrakan otomatis dari arsip pernyataan besar, laporan, dan spreadsheets.
Tantangan dan Solusi Umum
Tantangan 1: Layout halaman yang tidak konsisten
** Solusi:** Gunakan deteksi AUTO atau tetapkan mode yang berbeda per rentang halaman.
Tantangan 2: PDF yang sangat besar
** Solusi:** Proses dalam batch; file dibagi untuk kinerja memori yang lebih baik.
Tantangan 3: Kandungan campuran (teks, tabel, gambar)
** Solusi:** Validate dan post-process output; mode deteksi tun.
Pertimbangan kinerja
- PDF yang lebih besar membutuhkan lebih banyak memori/CPU
- Batch pekerjaan off-hours untuk kinerja terbaik
- Memerahkan sampel output sebelum integrasi
Praktik Terbaik
- Menggunakan Konvensi Nama untuk Tracking Mudah
- Berbagi PDF multi-page jika file sangat besar
- Memastikan kedua sumber dan dokumen output
- Validasi dan spot-check output dalam aliran kerja kritis
Skenario Lanjutan
Skenario 1: Ekspor ke PDF yang dapat dicari per halaman
foreach (RecognitionResult result in results)
{
result.Save($"output_page_{page}.pdf", SaveFormat.Pdf);
page++;
}
Skenario 2: Integrasi dengan database atau awan
foreach (RecognitionResult result in results)
{
string json = File.ReadAllText($"output_page_{page}.json");
// Upload json or send to a cloud endpoint
}
Kesimpulan
Aspose.OCR untuk .NET memungkinkan ekstraksi teks yang kuat, scalable dan data terstruktur dari PDF berbilang halaman – menghemat jam kerja manual dan meningkatkan otomatisasi aliran kerja.
Lihat lebih banyak contoh pemrosesan PDF dan batch di Aspose.OCR untuk .NET API Referensi .