Swift CIDetector識別相簿的二維碼

來源:互聯網
上載者:User

標籤:margin   smi   nali   二維碼   self   bsp   idf   nis   nal   

 

import UIKit

 

class firstViewController: UIViewController,UIImagePickerControllerDelegate,UINavigationControllerDelegate {

 

    var picker :UIImagePickerController!

 

    @IBAction func button(_ sender: UIButton) {

        if UIImagePickerController.isSourceTypeAvailable(.photoLibrary){

            picker = UIImagePickerController()

            picker.delegate = self

            picker.sourceType = .photoLibrary

            self.present(picker, animated: true, completion: nil)

        }

    }

 

 

    func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {

        //擷取選擇的圖片

        let image = info[UIImagePickerControllerOriginalImage] as! UIImage

 

        //二維碼讀取

        DispatchQueue.global().async {

            let imageData = UIImagePNGRepresentation(image)

            let ciImage:CIImage=CIImage(data: imageData!)!

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

            let feature = detector?.features(in: ciImage)

            let f = feature?.first as! CIQRCodeFeature

            print(f.messageString ?? "")

        }

 

        //返回

        picker.dismiss(animated: true, completion: {

            () -> Void in

        })

 

    }

}

Swift CIDetector識別相簿的二維碼

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.