使用zxing检测QR码

时间:2011-12-06 05:40:38

标签: c# zxing

我正在检测qrcode。我的要求是当用户向摄像机显示他/她的QR码时,程序必须检测并在QR码周围绘制一个框。我正在使用zxing库+ C#。我搜索了很多东西,但我找不到任何样品。请有人帮助我。

1 个答案:

答案 0 :(得分:2)

您可以使用检测器类。检测器构造函数将BitMatrix对象作为其唯一参数,可以从BinaryBitmap对象的BlackMatrix属性获取...

public string Detect(Bitmap bitmap)
    {
        try
        {
            com.google.zxing.LuminanceSource source = new RGBLuminanceSource(bitmap, bitmap.Width, bitmap.Height);
            var binarizer = new HybridBinarizer(source);
            var binBitmap = new BinaryBitmap(binarizer);
            BitMatrix bm = binBitmap.BlackMatrix;
            Detector detector = new Detector(bm);
            DetectorResult result = detector.detect();

            string retStr = "Found at points ";
            foreach (ResultPoint point in result.Points)
            {
                retStr += point.ToString() + ", ";
            }

            return retStr;
        }
        catch
        {
            return "Failed to detect QR code.";
        }
    }