Przegląd funkcji
Przegląd funkcji
Ta strona wprowadza API rozpoznawania biblioteki oraz możliwości omówione szczegółowo w innych częściach tego przewodnika. AsposeOcr jest punktem wejścia do całej biblioteki. Jej metoda Recognize() przyjmuje OcrInput i zwraca OcrOutput — listę RecognitionResult, po jednej na obraz lub stronę PDF.
Rozpoznawanie pojedynczych obrazów i PDF
OcrInput jest tworzony z InputType — InputType.SingleImage dla obrazu rastrowego lub InputType.PDF dla dokumentu PDF. Pliki są kolejkowane przy użyciu OcrInput.Add(). Usuwanie OcrInput usuwa jedynie kolejkujące ścieżki plików, które przechowuje.
using Aspose.OCR;
var api = new AsposeOcr();
using var input = new OcrInput(InputType.PDF);
input.Add("document.pdf");
OcrOutput output = api.Recognize(input);Wyniki rozpoznawania
Każdy RecognitionResult udostępnia RecognitionText (pełny rozpoznany tekst strony) oraz RecognitionLinesResult (listę RecognitionResult.LinesResult, z których każdy zawiera TextInLine oraz System.Drawing.Rectangle ramkę ograniczającą w Line).
foreach (RecognitionResult page in output)
{
Console.WriteLine(page.RecognitionText);
foreach (RecognitionResult.LinesResult line in page.RecognitionLinesResult)
{
Console.WriteLine($"{line.Line}: {line.TextInLine}");
}
}Przetwarzanie wsadowe
OcrInput akceptuje więcej niż jeden plik tego samego typu wejściowego. OcrOutput zachowuje kolejność, w jakiej pliki zostały dodane, z jednym RecognitionResult na plik (lub na stronę PDF).
using var input = new OcrInput(InputType.SingleImage);
input.Add("page-1.jpg");
input.Add("page-2.png");
OcrOutput output = api.Recognize(input);Wskazówki i najlepsze praktyki
- Zwolnij
OcrInput(lub otocz go instrukcjąusing), gdy rozpoznawanie zostanie zakończone, aby zwolnić podstawowe zasoby. - Obsługiwane są wyłącznie
InputType.SingleImageiInputType.PDF— każdy inny typ wejściowy powoduje błądNotSupportedException. - Rozpoznawanie obsługuje wyłącznie alfabet łaciński; nie ma parametru wyboru języka.
- Strony PDF są renderowane wewnętrznie przed rozpoznawaniem, więc nie jest potrzebny oddzielny krok konwersji PDF na obraz.
Typowe problemy
| Problem | Przyczyna | Rozwiązanie |
|---|---|---|
NotSupportedException na Recognize() | Utworzono OcrInput z nieobsługiwanym InputType | Użyj tylko InputType.SingleImage lub InputType.PDF |
FileNotFoundException na Recognize() | Ścieżka dodana przez OcrInput.Add() nie istnieje | Zweryfikuj ścieżkę pliku przed wywołaniem Add() |
Pusty RecognitionLinesResult | Nie wykryto linii tekstu na tym obrazie lub stronie | Potwierdź, że obraz źródłowy zawiera czytelny, nieobrócony tekst w alfabecie łacińskim |
FAQ
Jakie języki rozpoznaje Aspose.OCR FOSS dla .NET?
Tekst w alfabecie łacińskim. Osadzony model rozpoznawania nie obejmuje skryptów niełacińskich.
Czy wymaga połączenia z internetem?
Nie. Wszystkie trzy modele ONNX (detekcji, ulepszenia, rozpoznawania) są osadzone w zestawie i działają lokalnie poprzez Microsoft.ML.OnnxRuntime.
Czy mogę rozpoznać wiele plików w jednym wywołaniu?
Tak — dodaj wiele plików do tego samego OcrInput przed wywołaniem AsposeOcr.Recognize(). Zwrócony OcrOutput zachowuje ich kolejność.
Na jakich platformach to działa?
Celuje w .NET Standard 2.0, .NET Framework 4.8 oraz .NET 8.0+. Przetwarzanie obrazu wymaga systemu Windows, ponieważ zależy od System.Drawing.Common.
API Reference Podsumowanie
| Klasa/Metoda | Opis |
|---|---|
AsposeOcr.Recognize(OcrInput) | Punkt wejścia: rozpoznaje tekst i zwraca OcrOutput |
OcrInput.Add(string) | Kolejkuje ścieżkę pliku do rozpoznania |
InputType | Wyliczenie: SingleImage lub PDF |
RecognitionResult.RecognitionText | Pełny rozpoznany tekst strony |
RecognitionResult.RecognitionLinesResult | Lista rozpoznanych linii z ramkami ograniczającymi |
RecognitionResult.LinesResult.TextInLine | Rozpoznany tekst dla jednej linii |
RecognitionResult.LinesResult.Line | Ramka ograniczająca w układzie współrzędnych pikseli dla jednej linii |