Cara Mengautomatikkan Pengekstrakan Data dari PDF Multi-Page dengan Aspose.OCR

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 .

 Indonesia