如何从条形码静态图像中获取价值?

时间:2017-12-05 10:42:38

标签: ios swift barcode

我想从静态条形码图像中获取值。

目前我正在通过相机实时会话扫描条形码,但现在我想从静态条形码图像中获取值。

我使用的是Swift编程语言。

QRcode static image code :

let qrcodeImg = QRCodeImageField.image

        let detector:CIDetector = CIDetector(ofType: CIDetectorTypeQRCode, context: nil, options: [CIDetectorAccuracy:CIDetectorAccuracyHigh])!
        let ciImage:CIImage=CIImage(image:qrcodeImg!)!
        var qrCodeLink=""

        let features=detector.features(in: ciImage)
        for feature in features as! [CIQRCodeFeature] {
            qrCodeLink += feature.messageString!
        }

        if qrCodeLink=="" {
            print("nothing")
        }else{
            print("message: \(qrCodeLink)")
        }

Barcode scanner live camera session code :
func metadataOutput(_ output: AVCaptureMetadataOutput, didOutput metadataObjects: [AVMetadataObject], from connection: AVCaptureConnection) {
        if metadataObjects.count != 0
        {
            if let object = metadataObjects[0] as? AVMetadataMachineReadableCodeObject
            {
                if object.type == AVMetadataObject.ObjectType.code128
                    //if supportedCodeTypes.contains(metadataObj.type)
                {
                    let alert = UIAlertController(title: "Bar CODE", message: object.stringValue, preferredStyle: .alert)
                    alert.addAction(UIAlertAction(title: "Retake", style: .default, handler: nil))
                    alert.addAction(UIAlertAction(title: "Copy", style: .default, handler: {(nil) in UIPasteboard.general.string = object.stringValue
                        self.barCode_Generation(barCodeString: object.stringValue!)
                    }))
                    present(alert, animated: true, completion: nil)
                }
            }
        }
    }

0 个答案:

没有答案