欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

CIDetector 相册识别二维码出错

发布时间:2025/5/22 编程问答 34 豆豆
生活随笔 收集整理的这篇文章主要介绍了 CIDetector 相册识别二维码出错 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

在做点击相册识别二维码识别不了,折腾了大半天,终于从坑里爬出来 ,下面分享一下填坑过程

在创建相册和获取图片的时候添加上面的代码。然后用取出来的图片作为参数进行二维码识别,下面封装了一个类方法:

 public func recognizeQRCode() -> String?

    {

        let detector = CIDetector(ofType: CIDetectorTypeQRCode, context: nil, options: [CIDetectorAccuracy : CIDetectorAccuracyHigh])

        guard let imageData = UIImageJPEGRepresentation(self, 1) else {

            return nil

        }

        guard let features = detector?.features(in: CoreImage.CIImage.init(data: imageData)!) else {

            return nil

        }

        guard features.count > 0 else { return nil }

        let feature = features.first as? CIQRCodeFeature

        return feature?.messageString

    }

具体调用如下所示:

 let image = info[UIImagePickerControllerEditedImage] as! UIImage

        guard let recognizeResult = image.recognizeQRCode() else {

            ToastUtil.showHud("无法识别")

            return

        }

        if recognizeResult.count > 0 {

          

         print("识别结果--\(recognizeResult)")

        } else {

          ToastUtil.showHud("无法识别")

        }

转载于:https://www.cnblogs.com/jinlongyu123/p/9707208.html

总结

以上是生活随笔为你收集整理的CIDetector 相册识别二维码出错的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。