使用前置摄像头读取 Xamarin iOS ZXing 条码问题 [英] Xamarin iOS ZXing Barcode read using front camera issue

查看:59
本文介绍了使用前置摄像头读取 Xamarin iOS ZXing 条码问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用 Xamarin 和 ZXing 实现条形码扫描应用程序.不幸的是,使用 iPhone 和 iPad 上的前置摄像头进行扫描时效果不佳.任何建议或帮助表示赞赏

I am trying to implement a barcode scanning app using Xamarin and ZXing. Unfortunately scanning is not working well with front camera on iPhone and iPad. Any suggestions or help appreciated

推荐答案

您的 InitializeScanner 方法可以进行如下扫描仪初始化并调用开始扫描,在我的情况下,我希望同时支持条形码和二维码.如果您不想支持它,您可以删除扫描选项 QRCode.当扫描器识别代码并返回唯一字符串时,将回调初始化时提到的回调.扫描仪选项具有属性 UseFrontCameraIfAvailable

Your InitializeScanner method can do scanner initialization as below and invokes start scanning, in my case I wanted to support barcode and QR code both. You can remove scanning option QRCode if you do not want to support it. The callback mentioned while initialization is getting called back when scanner recognizes the code and returns unique string. The scanner option has property UseFrontCameraIfAvailable

 var mobileBarcodeScanningOptions= new ZXing.Mobile.MobileBarcodeScanningOptions(); 
        mobileBarcodeScanningOptions.UseFrontCameraIfAvailable = true;
        mobileBarcodeScanningOptions.PossibleFormats = new List<ZXing.BarcodeFormat>() {
        ZXing.BarcodeFormat.CODE_128,
        ZXing.BarcodeFormat.CODE_93,
        ZXing.BarcodeFormat.CODE_39,
        ZXing.BarcodeFormat.PDF_417,
        ZXing.BarcodeFormat.QR_CODE
        };
        mobileBarcodeScanningOptions.AutoRotate = false;
        mobileBarcodeScanningOptions.TryHarder = true;
        mobileBarcodeScanningOptions.TryInverted = false;
       var scanview = new ZXingScannerView(new CGRect(0, 0, View.Frame.Width, View.Frame.Height)) { }
        scanview.AutoFocus();

        //code to add your scanview in your main view
        scanview.StartScanning(MyScanResultHandler, mobileBarcodeScanningOptions);


 //After scanning code, scanner callbacks below method

    private void MyScanResultHandler(Result obj)
    {
        if (obj != null)
        {
            //obj.Text gives you value of code in string which you can use further in your application
        }          

    }

这篇关于使用前置摄像头读取 Xamarin iOS ZXing 条码问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆