ПРИМЕЧАНИЕ: Мой оригинальный вопрос был о том, надежен ли порт ZXing C #, но здесь я пытаюсь выяснить, как его использовать. Таким образом, они не являются дубликатами.
Я пытаюсь использовать модуль ZXing C #, но у меня проблемы. Кто-нибудь, кто раньше использовал ZXing, знает, как это сделать правильно? К сожалению, документация на C # довольно мала.
Мой текущий код:
using com.google.zxing;
using com.google.zxing.client.j2se;
using com.google.zxing.common;
//...
Reader reader = new MultiFormatReader();
MonochromeBitmapSource image = new BufferedImageMonochromeBitmapSource(new Bitmap(Image.FromFile("barcode.jpg")),false);
Result result = reader.decode(image);
string text = result.getText();
sbyte[] rawbytes = result.getRawBytes();
BarcodeFormat format = result.getBarcodeFormat();
ResultPoint[] points = result.getResultPoints();
Console.WriteLine("barcode text: {0}", text);
Console.WriteLine("raw bytes: {0}", rawbytes);
Console.WriteLine("format: {0}", format);
Console.ReadLine();
Я получаю исключение в строке, которая начинается с "Result result = ..." ReaderException заявляет: "Unable to cast object of type 'com.google.zxing.oned.MultiFormatOneDReader' to type 'com.google.zxing.Reader'.
Итак, что я делаю не так?
ОБНОВЛЕНИЕ: Я собираюсь попробовать предложенные идеи, но пока я обнаружил этот выпуск в группе ZXing.