Kako automatizirati ekstrakciju podataka iz više stranica PDF-a s Aspose.OCR
Mnogobrojni PDF-ovi iz skenerova, arhiva ili korporativnih radnih tokova često drže ogromne količine nepoželjnog teksta i tablica. ručna ekstrakcija je usporena i ne skalabilna. Aspose.OCR za .NET automatizira ekstrakta tekst, tablice i strukture iz dugih, složenih PDF s minimalnim kodom.
Real-svjetski problem
Pravni, financijski i akademski arhivi redovito obrađuju se s više stranica skeniranim PDF-ovima koji sadrže stotine stranica.
Pregled rješenja
Aspose.OCR za .NET može pakirati proces i izvlačiti tekst / tablice sa svake stranice u PDF-u s više stranica. možete odrediti rangove stranica, formate izvoza i automatsku integraciju s poslovnim aplikacijama ili digitalnim arhivima.
Preduzeća
- Visual Studio 2019 ili kasnije
- .NET 6.0 ili noviji (ili .Net Framework 4.6.2+)
- Aspose.OCR za .NET od NuGet
- Osnovne vještine C# programiranja
PM> Install-Package Aspose.OCR
Korak po korak provedba
Korak 1: Instaliranje i konfiguracija Aspose.OCR
using Aspose.OCR;
Korak 2: Dodajte više stranica PDF datoteke
OcrInput input = new OcrInput(InputType.PDF);
input.Add("archive.pdf"); // all pages
input.Add("report.pdf", 5, 10); // pages 5-14
Korak 3: Konfigurirajte postavke prepoznavanja i rang stranice
RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
settings.DetectAreasMode = DetectAreasMode.AUTO;
Korak 4: Izvadite tekst i tablice s svake stranice
AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);
Korak 5: Rezultati izvoza za svaku stranicu
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++;
}
Korak 6: Rješavanje pogrešaka i potvrđivanje podataka
try
{
AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
Korak 7: Optimizacija za velike datoteke i radna mjesta
- Procesiranje PDF-a u dosjeima po adresarima
- Koristite selektivnu obradu stranice za brzinu
- Monitoriranje pamćenja/CPU upotrebe
foreach (string file in Directory.GetFiles("./pdfs", "*.pdf"))
{
input.Add(file);
}
Sljedeći Članak 8: Popuniti primjer
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}");
}
}
}
Korištenje slučajeva i aplikacija
Pravna i usklađenost arhiviranje
Izvadite cijeli sadržaj ugovora, sudskih dosjea ili vladinih evidencija za pretragu i usklađenost.
Akademski i istraživački arhivi
Digitalizirajte i podijelite časopise, teze ili tablice podataka za analizu ili e-učenje.
Financijski i revizijski radni tokovi
Automatsko izvlačenje iz velikih arhiva izjava, izvješća i raspršivača.
Zajednički izazovi i rješenja
Izazov 1: Neusklađen raspored stranica
Rješenje: Koristite detekciju AUTO ili postavite različite načine po rasponu stranica.
Izazov 2: Vrlo veliki PDF-ovi
Rješenje: Proces u pakiranjima; razdvajanje datoteka za bolju performanse pamćenja.
Izazov 3: Mješoviti sadržaj (tekst, tablice, slike)
Rješenje: Validirani i post-proces izlazi; način otkrivanja tona.
Razmatranje učinkovitosti
- Veliki PDF-ovi zahtijevaju više memorije/CPU-a
- Batch radna mjesta za najbolje performanse
- Validacija uzoraka prije integracije
Najbolje prakse
- Koristite nazivne konvencije za jednostavno praćenje
- Razdvajanje više stranica PDF-a ako su datoteke vrlo velike
- Obavijest o izvoru i izvornim dokumentima
- Validacija i spot-check output u kritičnim radnim tokovima
Napredni scenariji
Scenarij 1: Izvoz na pretraživač PDF po stranici
foreach (RecognitionResult result in results)
{
result.Save($"output_page_{page}.pdf", SaveFormat.Pdf);
page++;
}
Scenarij 2: Integracija s bazom podataka ili oblakom
foreach (RecognitionResult result in results)
{
string json = File.ReadAllText($"output_page_{page}.json");
// Upload json or send to a cloud endpoint
}
zaključak
Aspose.OCR za .NET omogućuje čvrstu, skalabilnu ekstrakciju teksta i strukturirane podatke iz više stranica PDF-a – štedi satima ručnog napora i poboljšava automatizaciju radnog toka.
Pogledajte više primjera PDF-a i pakiranja u Aspose.OCR za .NET API reference .