ZBAR无法扫描PDF-417 iOS

时间:2013-11-28 05:17:41

标签: ios barcode zbar

我正在使用Zbar作为我的iOS条码扫描应用程序,但问题是它没有检测到pdf-417类型的条形码。我已经为iPhone安装了ZBAR应用程序,它也无法检测到pdf417。但是在zbar符号结构中添加了pdf 417。我还尝试通过这行代码明确启用pdf-417,但没有运气。

     [scanner setSymbology: ZBAR_PDF417 config: ZBAR_CFG_ENABLE to: 1];

任何帮助?

2 个答案:

答案 0 :(得分:4)

Zbar扫描仪仅支持部分特定条形码类型。

其支持条形码如 AN-13 / UPC-A,UPC-E,EAN-8,Code 128,Code 39,Interleaved 2 of 5和QR Code。

参考这个: http://zbar.sourceforge.net/

对于 PDF-417 bar 代码,似乎有一些单独的SDK可用。它将支持条形码,如 Pdf417,QrCode,LicenseInfo,Code128,Code39,EAN13,EAN8,ITF,UPC和UPCE。

https://github.com/PDF417/pdf417-ios

使用配置类型自定义此项:

[scanner setSymbology:ZBAR_PDF417 config:ZBAR_CFG_ENABLE to:1];

尝试使用所有配置类型并检查。这可能会有所帮助

typedef enum zbar_config_e {
    ZBAR_CFG_ENABLE = 0,        /**< enable symbology/feature */
    ZBAR_CFG_ADD_CHECK,         /**< enable check digit when optional */
    ZBAR_CFG_EMIT_CHECK,        /**< return check digit when present */
    ZBAR_CFG_ASCII,             /**< enable full ASCII character set */
    ZBAR_CFG_NUM,               /**< number of boolean decoder configs */

    ZBAR_CFG_MIN_LEN = 0x20,    /**< minimum data length for valid decode */
    ZBAR_CFG_MAX_LEN,           /**< maximum data length for valid decode */

    ZBAR_CFG_UNCERTAINTY = 0x40,/**< required video consistency frames */

    ZBAR_CFG_POSITION = 0x80,   /**< enable scanner to collect position data */

    ZBAR_CFG_X_DENSITY = 0x100, /**< image scanner vertical scan density */
    ZBAR_CFG_Y_DENSITY,         /**< image scanner horizontal scan density */
} zbar_config_t;

答案 1 :(得分:2)

如果您使用的是iOS7或更高版本,则不必依赖ZBar等第三方库。 AVFoundation内置支持使用设备相机检测1D和2D条形码,包括PDF417和QR码。 AVMetadataMachineReadableCodeObject可以解决问题。

您可以找到工作示例herehere