如何使用“FindBarcodesInUIImage”?

时间:2012-08-09 16:16:37

标签: iphone barcode barcode-scanner

我正在为iPhone开发Barcode scanner应用程序。

图书馆:RedLaser

我想从现有图像扫描条形码,而不是从相机扫描条形码。 我没有获得任何手动调用FindBarcodesInUIImage方法的文档。

我可以获得任何示例代码吗?

2 个答案:

答案 0 :(得分:0)

此代码段from the documentation是否有帮助?

  

此方法分析给定图像并返回图像中发现的任何条形码的信息。它旨在用于用户已经具有他们想要解码的条形码(例如,在他们的照片库中)的图片的情况。此方法对我们支持的所有条形码符号进行全面检查,不用于实时使用。

     

使用此方法扫描条形码时,您无法(也无需)指定扫描方向或活动扫描区域;整个图像在所有方向扫描。您也不能将扫描限制为特定的符号类型。如果绝对需要这样的功能,则可以通过过滤结果集来实现扫描后的实现。

     

FindBarcodesInUIImage同步运行,但可以放在一个线程中。根据图像大小和处理器速度,处理图像可能需要几秒钟。

答案 1 :(得分:0)

void ScanImageForBarcodes(UIImage *inputImage)
{
    NSSet *resultSet = FindBarcodesInUIImage(inputImage);

    // Print the results
    NSLog(@"%@", resultSet);
}

如果SDK未在图像中找到任何条形码,则日志消息将为(null)。否则,它将是:

{(
    (0x19e0660) Code 39: 73250110 -- (1 finds)
)}

此日志消息表示包含一个项目的搜索结果集,Code 39条形码的值为“73250110”。

请记住,SDK无法保证在图像中找到条形码。即使图像包含条形码,SDK也可能无法读取它,您将不会收到任何结果。