2011-11-21 36 views
0

我在用ZBar使用ipod讀取小QR碼時遇到了麻煩。看來我無法讓它掃描7mm x 7mm的代碼。這是配置問題還是ZBar庫的限制?我可以用pic2shop等其他應用程序掃描這些代碼。Zbar不會掃描ipod touch.why上的小條碼嗎?

那麼,請告訴我我錯在哪裏。 謝謝。

ZBarReaderViewController *reader = [ZBarReaderViewController new]; 
reader.readerDelegate = self; 

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

reader.showsZBarControls=NO; 

reader.cameraOverlayView.frame=CGRectMake(0, 0, 320, 460); 
reader.readerView.allowsPinchZoom = YES; 
//reader.readerView.alpha=1.0; 
reader.readerView.backgroundColor=[UIColor clearColor]; 

reader.wantsFullScreenLayout = YES; 
reader.readerView.zoom=1.0; 
[reader.readerView setScanCrop:(CGRect){ { 0.125, 0 }, { 0.75, 1} }]; 
[self.view addSubview:reader.view]; 

ZBarCaptureReader *cap=[[ZBarCaptureReader alloc]init]; 
cap.scanCrop=CGRectMake(10, 20, 100, 460); 
[self presentModalViewController: reader animated: YES]; 
[reader release]; 
+0

該庫僅適用於iPhone 3GS和iPhone 4. –

+0

ZBar沒有擔保其他設備上的工作,因爲他們記錄,沒有iPod的名稱, –

+0

但它仍然與ipod一起工作,只是不掃描小條碼。 – Furqi

回答

0

2年後= Z Bar可以使用的圖像大小存在問題。特別是根據文檔,每個模塊至少需要3個像素(黑色或白色條紋),因此圖像大小需要更大才能正確掃描。我在我的iPad 2中遇到了這個問題,它可以使用前置攝像頭讀取條形碼,但無法用後置攝像頭讀取(也會產生顆粒感照片,這與iPad 2發佈的相機規格相反,後者列出後置攝像頭作爲2的更好的 - 我相信規格在某個時間點被切換)。使用大型QR碼我需要iPhone 4S或iPhone 5才能正常掃描,並且視頻質量需要從默認VGA設置爲高。

爲了解決上述問題:

我會先嚐試刪除setScancrop線和最初的默認值(全屏幕),並開始捕捉儘可能多的條碼成爲可能。特別是CGRect值是指原點(x,y)和大小(寬度,長度)。我明白爲iPhone 4GS,4.4和舊版iTouch gen 3-4指定{0,0},{1.1}默認爲全屏((0,0),(320,480))。

接下來我將嘗試的是使用ZBarReaderView類,該類使用手動靜態拍攝的分辨率高於從視頻輸入獲取圖像的其他類。在這種情況下,相關參數是maxscansize,zoom,max zoom,它們在此模式下處於活動狀態,但不在其他類中。