Hoe te werken met de Aspose.OCR FOSS Core API in .NET
Aspose.OCR FOSS voor .NET herkent tekst in rasterafbeeldingen en PDF-documenten via een kleine core API: AsposeOcr, OcrInput, OcrOutput en RecognitionResult. Deze gids loopt door het installeren van het pakket en het end-to-end gebruiken van die core API.
Stap-voor-stap gids
Stap 1: Installeer het pakket
dotnet add package Aspose.OCR.FOSSStap 2: Importeer de namespace
Voeg de Aspose.OCR namespace toe aan elk bronbestand dat AsposeOcr, OcrInput of RecognitionResult aanroept:
using Aspose.OCR;Deze enkele namespace maakt AsposeOcr, OcrInput, OcrOutput, InputType en RecognitionResult beschikbaar.
Stap 3: Bouw een OcrInput en herken een afbeelding
Construeer een AsposeOcr, bouw een OcrInput met InputType.SingleImage, plaats een bestand in de wachtrij met OcrInput.Add(), en roep AsposeOcr.Recognize() aan.
var api = new AsposeOcr();
using var input = new OcrInput(InputType.SingleImage);
input.Add("scan.png");
RecognitionResult result = api.Recognize(input)[0];
Console.WriteLine(result.RecognitionText);Stap 4: Lees individuele regels en begrenzingskaders
Elke RecognitionResult.LinesResult-vermelding in RecognitionLinesResult bevat de tekst van één regel (TextInLine) en de bijbehorende pixelcoördinaat begrenzingskader (Line).
foreach (RecognitionResult.LinesResult line in result.RecognitionLinesResult)
{
System.Drawing.Rectangle bounds = line.Line;
Console.WriteLine($"x={bounds.X}, y={bounds.Y}: {line.TextInLine}");
}Stap 5: Herken een meerpagina-PDF
Voor InputType.PDF geeft AsposeOcr.Recognize() één RecognitionResult per pagina terug, in bronvolgorde.
using var pdfInput = new OcrInput(InputType.PDF);
pdfInput.Add("document.pdf");
OcrOutput output = api.Recognize(pdfInput);
foreach (RecognitionResult page in output)
{
Console.WriteLine(page.RecognitionText);
}Veelvoorkomende problemen en oplossingen
NotSupportedException bij het aanroepen Recognize(). De OcrInput werd geconstrueerd met een invoertype anders dan InputType.SingleImage or InputType.PDF. Alleen die twee invoertypen worden ondersteund.
FileNotFoundException bij het aanroepen Recognize(). Een pad toegevoegd via OcrInput.Add() bestaat niet op schijf. Valideer het pad voordat je aanroept Add().
ArgumentNullException bij het aanroepen Recognize(). null werd doorgegeven in plaats van een OcrInput instantie. Maak altijd een OcrInput eerste.
Empty RecognitionLinesResult. Er werd geen tekstregel gedetecteerd — bevestig dat de bronafbeelding leesbare, niet-gedraaide Latijnse tekst bevat.
Veelgestelde vragen
Behoudt OcrOutput de bestandsvolgorde?
Ja. OcrOutput is een lijst van RecognitionResult, één per afbeelding (of per PDF-pagina), in de volgorde waarin de bestanden werden toegevoegd via OcrInput.Add().
Moet ik OcrInput verwijderen?
Ja — OcrInput implementeert IDisposable. Gebruik een using statement of roep Dispose() expliciet aan zodra de herkenning voltooid is.
Kan ik zowel afbeeldingen als PDF’s verwerken in dezelfde OcrInput?
Nee — elke OcrInput wordt opgebouwd met één enkele InputType (SingleImage of PDF) en accepteert alleen bestanden van dat type.