Як автоматизувати витяг даних з багатосторонніх 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: Налаштування налаштувань і рангів сторінки
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: Неконзистентні розташування сторінки
Рішення: Використовуйте автоматичне виявлення або встановіть різні режими за діапазоном сторінки.
Створення Challenge 2: Very Large PDFs
Рішення: Процес в комплектах; розділені файли для кращої пам’яті.
Проблема 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 Референт .