Как да автоматизирате извличането на данни от мулти-страници PDF с Aspose.OCR
Многострани PDF от скенери, архиви или корпоративни работни потоци често задържат огромни количества непотърсени текстове и таблици. ръчното извличане е бавно и не скалиращо. Aspose.OCR за .NET автоматизира извлечването на текст, табели и структура от дълги, сложни PDF с минимален код.
Реални световни проблеми
Правни, финансови и академични архиви редовно се справят с многострани скенираните PDF файлове, съдържащи стотици страници.
Преглед на решението
Aspose.OCR за .NET може да комбинира процеса и да извлича текст / таблици от всяка страница в мулти-страница PDF. Можете да зададете редове на страници, експортни формати и автоматична интеграция с бизнес приложения или цифрови архиви.
Предупреждения
- Visual Studio 2019 или по-късно
- .NET 6.0 или по-късно (или .Net Framework 4.6.2+)
- ASPOSE.OCR за .NET от NuGet
- Основни умения за C# програмиране
PM> Install-Package Aspose.OCR
Стъпка по стъпка изпълнение
Стъпка 1: Инсталирайте и конфигурирайте Aspose.OCR
using Aspose.OCR;
Стъпка 2: Добавяне на многострани PDF файлове
OcrInput input = new OcrInput(InputType.PDF);
input.Add("archive.pdf"); // all pages
input.Add("report.pdf", 5, 10); // pages 5-14
Стъпка 3: Конфигуриране на настройки за разпознаване и Page Ranges
RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
settings.DetectAreasMode = DetectAreasMode.AUTO;
Стъпка 4: Извлечете текст и таблици от всяка страница
AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);
Стъпка 5: Износ на резултати за всяка страница
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++;
}
Стъпка 6: Преодоляване на грешки и валидиране на данни
try
{
AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
Стъпка 7: Оптимизиране за големи файлове и работни места
- Обработка на PDF файлове в папки по директория
- Използвайте селективна обработка на страници за скорост
- Използване на памет/CPU
foreach (string file in Directory.GetFiles("./pdfs", "*.pdf"))
{
input.Add(file);
}
Стъпка 8: Допълнителен пример
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}");
}
}
}
Използване на случаи и приложения
Закон и съответствие Архивиране
Извлечете пълно съдържание на договори, съдебни запитвания или правителствени записи за търсене и съответствие.
Академични и изследователски архиви
Дигитализация и разделяне на списания, дисертации или таблици с данни за анализ или електронно обучение.
Финансови и одитни работни потоци
Автоматично извличане от големи архиви, доклади и разпространители.
Съвместни предизвикателства и решения
Предизвикателство 1: Несъвместими Page Layouts
Решение: Използвайте AUTO детекция или задайте различни режими за диапазон от страници.
Предизвикателство 2: Много големи PDF файлове
Решение: Процес в комплекти; разпределени файлове за по-добро представяне на паметта.
Предизвикателство 3: Смесено съдържание (текст, таблици, изображения)
**Решение: ** Валидирани и следпроцес изходи; режим за откриване на тона.
Преглед на изпълнението
- Големите PDF файлове изискват повече памет/CPU
- Батч работни места извън работното време за най-добри резултати
- Валидиране на изходните проби преди интеграцията
Най-добрите практики
- Използвайте конвенции за назначаване за лесно проследяване
- Разделяне на многострани PDF, ако файловете са много големи
- Осигуряване както на източника, така и на изходните документи
- Валидиране и проверка на резултатите в критични работни потоци
Разширени сценарии
Сценарий 1: Износ към търсените PDF на страница
foreach (RecognitionResult result in results)
{
result.Save($"output_page_{page}.pdf", SaveFormat.Pdf);
page++;
}
Сценарий 2: Интегриране с база данни или облак
foreach (RecognitionResult result in results)
{
string json = File.ReadAllText($"output_page_{page}.json");
// Upload json or send to a cloud endpoint
}
заключение
ASPOSE.OCR за .NET позволява стабилно, скалиращо извличане на текст и структурирани данни от многострани PDF - спестяване на часове на ръчен труд и подобряване на автоматизацията на работния поток.
Вижте повече примери за обработка на PDF и пакет в Aspose.OCR за .NET API Референт .