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

标签 ios barcode

当我尝试扫描条形码时,我仍然将 AVCaptureVideoPreviewLayer 添加到我的整个 View 中,如果我将条形码放在 View 中心,它会扫描。请帮我解决问题

最佳答案

AVCapture 扫描二维码时,边角处有方 block 帮助定位二维码,因此您可以在 AVCaptureVideoPreviewLayer 的任意位置扫描二维码,一次扫描多个二维码。
但是没有正方形来帮助定位条形码,而是 AVCapture 扫描跨越 中心的多条线RectOfInterest .当一条线穿过条码的所有线时,AVCapture会识别这个条码。所以,如果您的条码在AVCaptureVideoPreviewLayer的角落,并且您不更改默认设置的RectOfInterest,那么您将无法扫描这个条形码。

要解决此问题:

  • 您可以在 AVCaptureVideoPreviewLayer 的中心绘制一个 Rect 以提示用户将条形码放在中心。
  • 在 AVCaptureVideoPreviewLayer 的一角设置 RectOfInterest,这样就只能扫描条码中的条码了。
  • 关于ios - 条码扫描不适用于完整的 AVCaptureVideoPreviewLayer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33932525/

    相关文章:

    ios - 无法创建 UIManagedDocument

    ios - 处理具有关系的 Firebase 模型的模式 (iOS)

    javascript - 如何检索存储在数据库中的数据并将其显示为二维码?,

    ios - 无法读取黑底白字 Data Matrix 条码

    android - 在 adobe air 中使用 android Intent

    java - 截断/紧凑 PDF417 矩阵

    更改设备方向时违反 iOS 自动布局约束

    ios - 如果选择了 CollectionViewCell,则弹出警报

    ios - 用物理创建下雨动画

    ios - 提高读取 UPC-A 条码 Objective-C (Xcode) 的速度