我想从静态条形码图像中获取值。
目前我正在通过相机实时会话扫描条形码,但现在我想从静态条形码图像中获取值。
我使用的是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)
}
}
}
}