2

VS 2015 の NuGet パッケージ マネージャーから Zxing.Net を追加しましたCODE_128。バーコードをデコードするために次のコードを試しました。しかし、結果としてnullを与えます。同じ画像が、Zxing Online Decoderを含むほぼすべてのオンライン バーコード読み取り Web サイトで正常にデコードされています。

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;
}

どこが間違っているのかわかりません。

編集:バーコード付き画像添付画像

4

2 に答える 2

2

あなたは試しましたか:

ZXing.BarcodeReader reader = new ZXing.BarcodeReader()
{
    AutoRotate = true,
    TryInverted = true,
    Options = new DecodingOptions
    {
        TryHarder = true,
        PureBarcode = true,
        PossibleFormats = new List<BarcodeFormat> { BarcodeFormat.CODE_128 }
    }
};

これは速度を最適化するものではありませんが、機能する場合は、ブルート フォース オプションの一部を削除できます。

于 2016-04-26T08:00:03.567 に答える
1

画像の一部を切り取ると、バーコードは正しくデコードされます。zxing は、「MDS」バーコードがスキャンしようとしているバーコードであると判断できないようです。

画像から単に EAN13 を削除するだけでは十分ではありませんが、垂直の「象の棒」だけの画像がある場合は、バーコードを見つけます。

ここに画像の説明を入力

つまり、スキャナーを「狙う」必要があります:)

于 2016-04-26T08:44:57.813 に答える