2012-07-05 49 views
6

Tôi muốn quét mã vạch VIN, ở định dạng Mã 39, sử dụng máy ảnh của iphone/ipad. Tôi đã thử zxing và zbar, nhưng chúng không hoạt động tốt. Hầu hết thời gian họ không thể nhận ra mã vạch. Bất cứ ai có thể chỉ cho tôi một cách tốt hơn để làm điều đó? hoặc có bất kỳ điều gì tôi có thể làm để tăng kết quả, bởi vì tôi chỉ cần quét Mã 39 (đối với xe VIN).SDK miễn phí để quét mã vạch (định dạng mã 39) trong iOS

+0

câu trả lời của tôi có giải quyết được sự cố không? – Jeremie

Trả lời

7

sử dụng Zbar để thực hiện việc này. Để có đủ độ phân giải để quét, bạn sẽ muốn quét mã vạch ở chế độ ngang. Dưới đây là xác lập cá nhân (thử nghiệm & làm việc)

// 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]; 

Điều đó sẽ khá nhiều làm điều đó! Chúc may mắn!

Chỉnh sửa/Lưu ý: khung iOS hiện bao gồm máy quét mã vạch như iOS 7. Tôi đã sử dụng this implementation để có kết quả tốt hơn và dễ dàng hơn sử dụng Zbar.

+1

Có hoạt động không? – wod

+1

có, nó hoạt động tuyệt vời :) Tôi đã có 0 vấn đề. – Jeremie

+0

Xin chào, tôi sử dụng cùng một mã nhưng không hoạt động với tôi, bạn có thể giúp tôi – Ravi

Các vấn đề liên quan