免费的SDK为iOS中扫描条形码(代码39格式)(Free SDK for scanning bar

2019-06-26 02:11发布

我要扫描条形码VIN,这在39码格式,使用iPhone / iPad的相机。 我试图斑马线和zbar和,但他们不工作。 大多数的时候,他们无法识别的条形码。 谁能告诉我一个更好的方式来做到这一点? 或者是有什么我可以做,以提高的结果,因为我只需要扫描39码(VIN用于汽车)。

Answer 1:

使用zbar和做到这一点。 为了获得足够的分辨率进行扫描,你将要扫描在横向模式下的条形码。 这里是我的设置(测试和工作)

// ADD: present a barcode reader that scans from the camera feed
ZBarReaderViewController *reader = [ZBarReaderViewController new];
reader.readerDelegate = self;
reader.supportedOrientationsMask = ZBarOrientationMaskAll;

ZBarImageScanner *scanner = reader.scanner;

//disable other codes to improve performance
[scanner setSymbology: 0
               config: ZBAR_CFG_ENABLE
                   to: 0];
[scanner setSymbology:ZBAR_CODE39 config:ZBAR_CFG_ENABLE to:1];
//only scan vertically, in the middle of the screen (also improves performance)
[reader setScanCrop:CGRectMake(0, 0.4, 1, 0.2)];
[reader setShowsZBarControls:NO];
[reader setShowsHelpOnFail:NO];
//VERY IMPORTANT: reset zoom. by default, the screen is partially zoomed in and will cause a loss of precision
reader.readerView.zoom = 1.0;
reader.readerView.allowsPinchZoom=NO;
reader.readerView.showsFPS=YES;
reader.readerView.tracksSymbols=YES;
//scan landscape only (this also improves performance)
[scanner setSymbology:ZBAR_CODE39 config:ZBAR_CFG_X_DENSITY to:0];
[scanner setSymbology:ZBAR_CODE39 config:ZBAR_CFG_Y_DENSITY to:1];

这应该几乎做到这一点! 祝好运!

编辑/注:iOS的框架,现在包括条形码扫描仪的iOS 7,我用这个实现以获得更好的和更容易的结果比使用zbar和。



文章来源: Free SDK for scanning barcode (code 39 format) in iOS