条形码扫描不适用于完整的AVCaptureVideoPreviewLayer

时间:2015-11-26 07:10:14

标签: ios barcode

我在整个视图中添加了AVCaptureVideoPreviewLayer,当我正在尝试扫描条形码时,如果我将条形码放在视图中心,它会扫描。请帮我解决问题

1 个答案:

答案 0 :(得分:4)

当AVCapture扫描QRCode时,角落中有正方形有助于定位QRCode。因此,您可以在AVCaptureVideoPreviewLayer中的任何位置扫描QRCode,并一次扫描多个QRCode。
但是没有正方形来帮助定位条形码,相反,AVCapture扫描多条线,这些线穿过 RectOfInterest 的中心。当一条线跨越条形码的所有线时,AVCapture识别出这个条形码那么,如果您的条形码位于AVCaptureVideoPreviewLayer的角落,并且您没有更改默认的RectOfInterest,那么您就无法扫描此条形码。

解决此问题:

  1. 您可以在AVCaptureVideoPreviewLayer的中心绘制一个Rect,以提示用户将条形码放在中心。

  2. 在AVCaptureVideoPreviewLayer的角落设置RectOfInterest,因此您只能扫描corder中的条形码。