Dépannage d'une ancienne version de System.Drawing
le projet .NET 4.6.1 à .NET 4.8 est livré avec la version 4.0.0\ de System.Drawing intégrée. Cette version de System.Drawing n'est plus supportée et peut contenir du code vulnérable.
Essayer d'instancier OcrInput à partir de System.Drawing.Image va générer "_IronOcr.Exceptions.IronOcrProductException : 'Unable to parse Object'" [] ceci est dû au fait qu'IronOCR n'a pas pu reconnaître System.Drawing.Image comme un type d'entrée valide"
Essayer de spécifier un type d'entrée d'image comme OcrInput(Image : image) l'erreur "cannot convert from System.Drawing.Image to SixLabors.ImageSharp.Image" sera déclenchée
Solution possible
Mise à jour de System.Drawing.Common vers la version 6.0.0
Une version plus ancienne de System.Drawing n'est plus prise en charge et peut contenir du code vulnérable.
Utilisez SixLabors.ImageSharp version 2.1.3
OcrInput peut être instancié avec le type SixLabors.ImageSharp.Image.
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