我使用here中的示例构建了一个qrcode扫描应用程序,它可以完美地处理纸张或普通光线
在正常情况下,qrcode如下所示: (线条较粗,这些点彼此靠近)
我的问题:当环境明亮,手机很亮(特别是像SamsungEdge 7这样的视网膜显示屏)时,扫描的qrcode变得如下所示。 无法再阅读qrcode了! (线条越来越薄,点变得越来越小)
任何建议或我在何处/如何解决此类错误?因为即使在我的“错误”中,ZXING也可以进行扫描。场景。
提前致谢!
答案 0 :(得分:0)
询问并搜索后。 (有用信息:https://www.objc.io/issues/21-camera-and-photos/camera-capture-on-ios/)
此问题与相机曝光,亮度,对比度,白平衡因素有关。
这是我为解决问题而添加的内容
//zoom + set exposure for bright senario
do {
try currentDevice.lockForConfiguration()
} catch {
// handle error
return
}
currentDevice.videoZoomFactor = 1.0 + CGFloat(1)
let exposureBias:Float = -0.5
currentDevice.setExposureTargetBias(exposureBias) { (time:CMTime) -> Void in
}
currentDevice.unlockForConfiguration()