Обзор возможностей

Обзор возможностей

Обзор функций

Эта страница представляет API распознавания библиотеки и возможности, подробно описанные в других разделах данного руководства. AsposeOcr является точкой входа во всю библиотеку. Его метод Recognize() принимает OcrInput и возвращает OcrOutput — список RecognitionResult, по одному на изображение или страницу PDF.


Распознавание одиночных изображений и PDF

OcrInput создаётся с помощью InputType — InputType.SingleImage для растрового изображения или InputType.PDF для PDF-документа. Файлы ставятся в очередь с помощью OcrInput.Add(). Удаление OcrInput лишь очищает находящиеся в очереди пути к файлам.

using Aspose.OCR;

var api = new AsposeOcr();
using var input = new OcrInput(InputType.PDF);
input.Add("document.pdf");
OcrOutput output = api.Recognize(input);

Результаты распознавания

Каждый RecognitionResult раскрывает RecognitionText (полный распознанный текст страницы) и RecognitionLinesResult (список RecognitionResult.LinesResult, каждый из которых содержит TextInLine и ограничивающий прямоугольник System.Drawing.Rectangle в Line).

foreach (RecognitionResult page in output)
{
    Console.WriteLine(page.RecognitionText);
    foreach (RecognitionResult.LinesResult line in page.RecognitionLinesResult)
    {
        Console.WriteLine($"{line.Line}: {line.TextInLine}");
    }
}

Пакетная обработка

OcrInput принимает более одного файла одного и того же типа ввода. OcrOutput сохраняет порядок, в котором файлы были добавлены, с одним RecognitionResult на файл (или на страницу PDF).

using var input = new OcrInput(InputType.SingleImage);
input.Add("page-1.jpg");
input.Add("page-2.png");
OcrOutput output = api.Recognize(input);

Советы и лучшие практики

  • Освободите OcrInput (или оберните его в оператор using) после завершения распознавания, чтобы освободить связанные ресурсы.
  • Поддерживаются только InputType.SingleImage и InputType.PDF — любой другой тип ввода вызывает NotSupportedException.
  • Распознавание поддерживает только латинский алфавит; параметр выбора языка отсутствует.
  • Страницы PDF рендерятся внутренне перед распознаванием, поэтому отдельный шаг конвертации PDF в изображение не требуется.

Распространённые проблемы

ПроблемаПричинаИсправление
NotSupportedException на Recognize()Объект OcrInput был построен с неподдерживаемым InputTypeИспользуйте только InputType.SingleImage или InputType.PDF
FileNotFoundException на Recognize()Путь, добавленный через OcrInput.Add(), не существуетПроверьте путь к файлу перед вызовом Add()
Пустой RecognitionLinesResultВ этом изображении или на странице не обнаружено строк текстаУбедитесь, что исходное изображение содержит разборчивый, не повернутый текст на латинице

FAQ

Какие языки распознаёт Aspose.OCR FOSS для .NET?

Текст латинского алфавита. Встроенная модель распознавания не охватывает нелатинские скрипты.

Требуется ли интернет-соединение?

Нет. Все три модели ONNX (детекция, уточнение, распознавание) встроены в сборку и запускаются локально через Microsoft.ML.OnnxRuntime.

Можно ли распознать несколько файлов за один вызов?

Да — добавьте несколько файлов в один OcrInput перед вызовом AsposeOcr.Recognize(). Возвращаемый OcrOutput сохраняет их порядок.

На каких платформах это работает?

Он нацелен на .NET Standard 2.0, .NET Framework 4.8 и .NET 8.0+. Обработка изображений требует Windows, потому что зависит от System.Drawing.Common.


API Reference Сводка

Класс/МетодОписание:
AsposeOcr.Recognize(OcrInput)Точка входа: распознает текст и возвращает OcrOutput
OcrInput.Add(string)Помещает путь к файлу в очередь для распознавания
InputTypeПеречисление: SingleImage или PDF
RecognitionResult.RecognitionTextПолный распознанный текст страницы
RecognitionResult.RecognitionLinesResultСписок распознанных строк с ограничивающими рамками
RecognitionResult.LinesResult.TextInLineРаспознанный текст для одной строки
RecognitionResult.LinesResult.LineОграничивающий прямоугольник в пиксельных координатах для одной строки

См. также:

 Русский