Developer/iOS

[IPhone] zBar를 이용하여 바코드 인식하기.

블로blow 2010. 12. 3. 09:27
728x90
1. 우선 http://zbar.sourceforge.net/download.html에 들어가서 SDK를 다운받는다.

2. 새로운 프로젝트를 만들고 아래와 같은 프레임워크를 추가한다.
  • AVFoundation.framework (weak)
  • CoreMedia.framework (weak)
  • CoreVideo.framework (weak)
  • QuartzCore.framework
  • libiconv.dylib
3. 프로그램에서 아래와 같이 import를 해준다.
#import "ZBarSDK.h"
4. 버튼을 누루면 바코드 인식화면이 뜨게할 이벤트를 하나 만든다.

5. 그 이벤트에 아래와 같이 코딩한다.

-(IBAction)press_barcode{


ZBarReaderViewController *reader = [ZBarReaderViewController new];


reader = [ZBarReaderViewController new];

reader.readerDelegate = self;

/*

 UIView *barcodeview = [[UIView alloc]initWithFrame:CGRectMake(0.0f, 0.0f, 320.0f, 460.0f)];

 UIImageView *barcodeup = [[UIImageView alloc]initWithFrame:CGRectMake(0.0f, 0.0f, 320.0f, 80.0f)];

 UIImageView *barcodedown = [[UIImageView alloc]initWithFrame:CGRectMake(0.0f, 160.0f, 320.0f, 300.0f)];

 [barcodeup setImage:[UIImage imageNamed:@"barcodeup.png"]];

 [barcodedown setImage:[UIImage imageNamed:@"barcodedown.png"]];

 

 [barcodeview addSubview:barcodeup];

 [barcodeview addSubview:barcodedown];

 

 reader.cameraOverlayView = barcodeview;

 

 [barcodeup release];

 [barcodedown release];

 */ 이 주석은 카메라화면이 뜨는 곳에 다른 뷰(이미지)를 더 추가하기 위해서 작성한 코드이다.

ZBarImageScanner *scanner = reader.scanner;

[scanner setSymbology:ZBAR_I25 config:ZBAR_CFG_ENABLE to:0];

[self presentModalViewController:reader animated:YES];

[scanner release];

[reader release];

}


6. 바코드가 스캔 되었을 때, 실행할 부분을 작성한다.

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {

id<NSFastEnumeration> results = [info objectForKey:ZBarReaderControllerResults];

ZBarSymbol *symbol = nil;

for(symbol in results)

break;

barcode_number.text = symbol.data;

//symbol.data가 바코드 번호이다.

/*

 if(picker.sourceType == UIImagePickerControllerSourceTypeCamera)

 [self performSelector: @selector(playBeep)

 withObject: nil

 afterDelay: 0.01];

 이부분은 스캔이 되었을때, 소리가 하게 하는 부분이다.

 

 */

[self dismissModalViewControllerAnimated:YES];

}




위와 같이 코딩하면 바코드 스캔 프로그램이 완성된다.

좀 더 참고하거나, 추가하고 싶은 부분이 있으면 아래에 방문에 zBar Document를 참고하기 바란다.

http://zbar.sourceforge.net/iphone/sdkdoc/index.html





728x90