Я использую ZXing.Net 0.16.4.0 для декодирования файлов кода qr, которые хранятся в папке 'wwwroot / qrr' , но получаю ошибку времени компиляции:
Невозможно преобразовать из 'System.Drawing.Bitmap' в 'ZXing.LuminanceSource'
Мой код:
string[] files = Directory.GetFiles("wwwroot/qrr");
foreach (string file in files)
{
// create a barcode reader instance
IBarcodeReader reader = new BarcodeReader();
// load a bitmap
var barcodeBitmap = (Bitmap)Image.FromFile("wwwroot/qrr/" + Path.GetFileName(file));
// detect and decode the barcode inside the bitmap
var result = reader.Decode(barcodeBitmap);
}
Ошибка впоследняя строка кода:
var result = reader.Decode(barcodeBitmap);
Мое приложение находится в ASP.NET Core, и я использую официальный код документа, но они не работают.Помогите, пожалуйста?
Обновление
Я заметил, что пакет ZXing при добавлении в приложение ASP.NET Core, то есть ZXing.IBarcodeReader, имеет отсутствующий метод перегрузки декодирования:
IBarcodeReader имеет только 2 перегрузки метода декодирования:
Result Decode(byte[] rawRGB, int width, int height, RGBLuminanceSource.BitmapFormat format);
Result Decode(LuminanceSource luminanceSource);
Но при установке этого пакета в .Net 4.6.1 framework возникает еще один метод перегрузки:
Result Decode(Bitmap barcodeBitmap);
Как пакет может выдавать разные коды в разных рамках?