From a78262b449056034130ffde1caa780853bec49d9 Mon Sep 17 00:00:00 2001 From: rdesimone Date: Fri, 30 Mar 2018 14:31:52 +0200 Subject: [PATCH] add ITF (less than 14 digit) support (#636) --- src/ios/CDVBarcodeScanner.mm | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/src/ios/CDVBarcodeScanner.mm b/src/ios/CDVBarcodeScanner.mm index 748381c1..d6c95b5c 100644 --- a/src/ios/CDVBarcodeScanner.mm +++ b/src/ios/CDVBarcodeScanner.mm @@ -510,7 +510,7 @@ - (NSString*)setUpCaptureSession { else { return @"unable to add video capture output to session"; } - + [output setMetadataObjectTypes:[self formatObjectTypes]]; // setup capture preview layer @@ -585,7 +585,9 @@ - (NSString*)formatStringFromMetadata:(AVMetadataMachineReadableCodeObject*)form if (format.type == AVMetadataObjectTypeCode128Code) return @"CODE_128"; if (format.type == AVMetadataObjectTypeCode93Code) return @"CODE_93"; if (format.type == AVMetadataObjectTypeCode39Code) return @"CODE_39"; - if (format.type == AVMetadataObjectTypeITF14Code) return @"ITF"; + if (format.type == AVMetadataObjectTypeInterleaved2of5Code) return @"ITF"; + if (format.type == AVMetadataObjectTypeITF14Code) return @"ITF_14"; + if (format.type == AVMetadataObjectTypePDF417Code) return @"PDF_417"; return @"???"; } @@ -598,9 +600,9 @@ - (NSArray*) formatObjectTypes { if (self.formats != nil) { supportedFormats = [self.formats componentsSeparatedByString:@","]; } - + NSMutableArray * formatObjectTypes = [NSMutableArray array]; - + if (self.formats == nil || [supportedFormats containsObject:@"QR_CODE"]) [formatObjectTypes addObject:AVMetadataObjectTypeQRCode]; if (self.formats == nil || [supportedFormats containsObject:@"AZTEC"]) [formatObjectTypes addObject:AVMetadataObjectTypeAztecCode]; if (self.formats == nil || [supportedFormats containsObject:@"DATA_MATRIX"]) [formatObjectTypes addObject:AVMetadataObjectTypeDataMatrixCode]; @@ -610,9 +612,10 @@ - (NSArray*) formatObjectTypes { if (self.formats == nil || [supportedFormats containsObject:@"CODE_128"]) [formatObjectTypes addObject:AVMetadataObjectTypeCode128Code]; if (self.formats == nil || [supportedFormats containsObject:@"CODE_93"]) [formatObjectTypes addObject:AVMetadataObjectTypeCode93Code]; if (self.formats == nil || [supportedFormats containsObject:@"CODE_39"]) [formatObjectTypes addObject:AVMetadataObjectTypeCode39Code]; - if (self.formats == nil || [supportedFormats containsObject:@"ITF"]) [formatObjectTypes addObject:AVMetadataObjectTypeITF14Code]; + if (self.formats == nil || [supportedFormats containsObject:@"ITF"]) [formatObjectTypes addObject:AVMetadataObjectTypeInterleaved2of5Code]; + if (self.formats == nil || [supportedFormats containsObject:@"ITF_14"]) [formatObjectTypes addObject:AVMetadataObjectTypeITF14Code]; if (self.formats == nil || [supportedFormats containsObject:@"PDF_417"]) [formatObjectTypes addObject:AVMetadataObjectTypePDF417Code]; - + return formatObjectTypes; } @@ -795,16 +798,16 @@ - (UIView *)buildOverlayViewFromXib NSLog(@"%@", @"An error occurred loading the overlay xib. It appears that the overlayView outlet is not set."); return nil; } - + self.overlayView.autoresizesSubviews = YES; self.overlayView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; self.overlayView.opaque = NO; - + CGRect bounds = self.view.bounds; bounds = CGRectMake(0, 0, bounds.size.width, bounds.size.height); - + [self.overlayView setFrame:bounds]; - + return self.overlayView; }