为条形码解码获取 NULL 值
Getting NULL value for barcode decoding
我在 VS 2015 中添加了来自 NuGet 包管理器的 Zxing.Net。我尝试了以下代码来解码 CODE_128
条形码。但它给出的结果是 null。
在包括Zxing Online Decoder.
在内的几乎所有在线条码读取网站中,同一张图像都被成功解码。
using System;
using System.Drawing;
using ZXing.QrCode;
using ZXing.QrCode.Internal;
public string barcode_scan()
{
string qr = @"C:\Users\Admin\Desktop\barcode.jpg";
ZXing.BarcodeReader reader = new ZXing.BarcodeReader();
var result = reader.Decode((Bitmap)Bitmap.FromFile(qr));
return result;
}
我不知道哪里出错了。
编辑: 附上图片 Image with barcode
您尝试过:
ZXing.BarcodeReader reader = new ZXing.BarcodeReader()
{
AutoRotate = true,
TryInverted = true,
Options = new DecodingOptions
{
TryHarder = true,
PureBarcode = true,
PossibleFormats = new List<BarcodeFormat> { BarcodeFormat.CODE_128 }
}
};
这不会针对速度进行优化,但如果可行,您可以删除一些强力选项。
如果您裁剪出一张图片,则条形码解码正确。显然 zxing 无法确定 "MDS" 条码就是您要扫描的条码。
仅从图像中删除 EAN13 是不够的,但如果您的图像只有垂直 "elephant bar",它会找到条形码:
换句话说,您需要 "aim" 扫描仪 :)
我在 VS 2015 中添加了来自 NuGet 包管理器的 Zxing.Net。我尝试了以下代码来解码 CODE_128
条形码。但它给出的结果是 null。
在包括Zxing Online Decoder.
using System;
using System.Drawing;
using ZXing.QrCode;
using ZXing.QrCode.Internal;
public string barcode_scan()
{
string qr = @"C:\Users\Admin\Desktop\barcode.jpg";
ZXing.BarcodeReader reader = new ZXing.BarcodeReader();
var result = reader.Decode((Bitmap)Bitmap.FromFile(qr));
return result;
}
我不知道哪里出错了。
编辑: 附上图片 Image with barcode
您尝试过:
ZXing.BarcodeReader reader = new ZXing.BarcodeReader()
{
AutoRotate = true,
TryInverted = true,
Options = new DecodingOptions
{
TryHarder = true,
PureBarcode = true,
PossibleFormats = new List<BarcodeFormat> { BarcodeFormat.CODE_128 }
}
};
这不会针对速度进行优化,但如果可行,您可以删除一些强力选项。
如果您裁剪出一张图片,则条形码解码正确。显然 zxing 无法确定 "MDS" 条码就是您要扫描的条码。
仅从图像中删除 EAN13 是不够的,但如果您的图像只有垂直 "elephant bar",它会找到条形码:
换句话说,您需要 "aim" 扫描仪 :)