2011-06-06 3 views
2

iPhone/iOSアプリ内でZbarバーコードスキャンを使用して、ユーザーがQRコードにカメラを向けるのを支援するために、ソートや十字線などの視覚的インジケータを画面に追加することが可能かどうかを知りたいですか?iPhone iOS:ZBarバーコードスキャニングに十字線などのビジュアルインジケータを追加できますか?

+1

私はタグとしてZBarを追加することに同意します。これは、iphoneのための最高のオープンソースのバーコードリーダーの一つです。 – JeroenEijkhof

答えて

2

これは、透明なPNGで最も効果的です。プロジェクトにインポートしてから、新しいUIImageViewを作成して読者に与えてください。

私は、ロゴを追加するためにこれをした:

// Create the reader 
self.reader = [ZBarReaderViewController new]; 
self.reader.readerDelegate = self; 

// Create image for adding a logo :) 
UIImage *image = [UIImage imageNamed:@"scan_logo.png"]; 
UIImageView *imageLogo = [[UIImageView alloc] initWithImage:image]; 
imageLogo.frame = CGRectMake(0, 0, image.size.width, image.size.height); 

// Configure reader 
self.reader.cameraOverlayView = imageLogo; 

だけからフレームの位置を変更する中央の画像を取得するには、次のようなものに

imageLogo.frame = CGRectMake(0, 0, image.size.width, image.size.height); 

imageLogo.center = CGRectMake(320/2, 460/2, image.size.width, image.size.height); 
+0

ありがとう、ジェーレン。シミュレータでこれを表示する方法はありますか? – gonzobrains

+0

遅れて申し訳ありません。あなたのコンピュータにはカメラがないので残念ながら、スキャンする画像を選択するオプションはありません。 iPhone/iPadシミュレータの画像ライブラリにバーコードを保存するだけで、テスト時にバーコードが表示されます。また、私が与えた答えが正しければ、正解とマークすることを検討してください。 – JeroenEijkhof

0

FWIW私のアプリで何をしたのは、ZBarReaderViewControllerクラスを拡張し、新しいクラスをZBarReaderDelegateとして設定することですO、その後、私のinitオーバーライドにJeroenEijkhofのコードを配置:これは、そのような私はカメラビューを実装しているのでviewDidLoadviewWillAppearにナビゲーションコントローラをカスタマイズするよう、私にビューの他の側面を制御する能力を与えた

- (id) init 
{ 
    self = [super init]; 
    if(self) { 
     self.readerDelegate = self; 
     UIImage *image = [UIImage imageNamed:... 
     ... 
    } 
    return self; 
} 

NavigationControllerビューのスタックであり、zbarドキュメントが示すように、モーダルにする代わりにタイトルバー、ツールバーなどを追加する機能が必要でした。

関連する問題