Како аутоматизовати извлачење података из мулти-страница ПДФ-а са Асписе.ОЦР

Како аутоматизовати извлачење података из мулти-страница ПДФ-а са Асписе.ОЦР

Мулти-странице ПДФ-а из скенера, архива, или корпоративних радних токова често држе огромне количине непотраживаног текста и табела. ручна екстракција је спора и не скалирајућа. Асписе.ОЦР за .НЕТ аутоматизује извлачење текста, табла и структуре из дугих, сложених ПдФ са минималним кодом.

Реал светски проблем

Правни, финансијски и академски архиви редовно третирају мулти-странице скенираних ПДФ-а који садрже стотине страница.

Преглед решења

Аппосе.ОЦР за .НЕТ може баццх процес и извући текст / табеле са сваке странице у мулти-странице ПДФ. Можете одредити линије страница, формати извоза, и аутоматске интеграције са пословним апликацијама или дигиталне архиве.

Принципи

  • Visual Studio 2019 или касније
  • .NET 6.0 или новији (или .Net Framework 4.6.2+)
  • Aspose.OCR za .NET od NuGet
  • Основне вештине Ц # програмирања
PM> Install-Package Aspose.OCR

Корак по корак спровођење

Корак 1: Инсталирајте и конфигуришете Aspose.OCR

using Aspose.OCR;

Корак 2: Додајте више страница ПДФ датотеке

OcrInput input = new OcrInput(InputType.PDF);
input.Add("archive.pdf"); // all pages
input.Add("report.pdf", 5, 10); // pages 5-14

Корак 3: Подесите подешавања препознавања и рангирање странице

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: Оптимизација за велике датотеке и бацх запослености

  • Обрада ПДФ-а у фасциклама по директоријуму
  • Коришћење селективне обраде странице за брзину
  • Мониторинг меморије / коришћење ЦПУ
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}");
        }
    }
}

Коришћење случајева и апликација

Закон и поштовање Архивирање

Екстрактирајте пуни садржај уговора, судских пријава или државних података за претрагу и поштовање.

Академски и истраживачки архиви

Дигитализација и дистрибуција часописа, теза или табела података за анализу или е-учење.

Finansijski i revizijski radni tokovi

Аутоматска екстракција из великих архива изјава, извештаја и листова.

Заједнички изазови и решења

Проблем 1: Неконзистентни распоред страница

Решење: Користите ауто детекцију или подесите различите режиме по опсегу страница.

Проблем 2: Веома велики ПДФ

Решење: Процес у батовима; раздвојени датотеке за бољу перформансе меморије.

Проблем 3: Мешани садржај (текст, табеле, слике)

Решење: Валидација и пост-процес излаза; режим откривања тонуса.

Размишљање о перформанси

  • Велики ПДФ захтева више меморије / ЦПУ
  • Batch radno vreme za najbolje performanse
  • Проверите исходне узорке пре интеграције

Најбоља пракса

  • Користите конвенције именовања за лако праћење
  • Раздвојити вишестранице ПДФ-а ако су датотеке веома велике
  • Обезбедити и извор и излазни документи
  • Validacija i spot-check output u kritičnim tokovima rada

Напредни сценарио

Сценарио 1: Експорт на претраживајуће ПДФ по страници

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 za .NET omogućava čvrstu, skalabilnu ekstrakciju teksta i strukturirane podatke iz više stranica PDF-a – štedi sat vremena ručnog napora i poboljšava automatizaciju tokova rada.

Види више ПДФ и баццх обраде примера у Aspose.OCR за .NET API референце .

 Српски