Verwendung älterer Versionen von System.Drawing mit IronOCR
.NET 4.6.1 bis .NET 4.8 Projekt kommt mit eingebautem System.Drawing Version 4.0.0. Diese Version von System.Drawing wird nicht mehr unterstützt und kann anfälligen Code enthalten.
Der Versuch, OcrInput aus System.Drawing.Image zu instanziieren, löst "_IronOcr.Exceptions.IronOcrProductException: 'Unable to parse Object[] dies liegt daran, dass IronOCR System.Drawing.Image nicht als gültigen Eingabetyp erkennen konnte."
Versucht, den Typ der Bildeingabe wie OcrInput anzugeben(Bild: Bild) löst den Fehler "kann nicht von System.Drawing.Image nach SixLabors.ImageSharp.Image konvertieren" aus
Mögliche Lösung
Aktualisieren Sie System.Drawing.Common auf Version 6.0.0
Ältere Versionen von System.Drawing werden nicht mehr unterstützt und können anfälligen Code enthalten.
Verwenden Sie SixLabors.ImageSharp Version 2.1.3
OcrInput kann mit dem Typ SixLabors.ImageSharp.Image instanziiert werden.
var Ocr = new IronTesseract();
Image image = Image.Load("image.jpg");
using (var Input = new OcrInput(image))
{
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
var Ocr = new IronTesseract();
Image image = Image.Load("image.jpg");
using (var Input = new OcrInput(image))
{
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Dim Ocr = New IronTesseract()
Dim image As Image = System.Drawing.Image.Load("image.jpg")
Using Input = New OcrInput(image)
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using