1.前書き
OBR(Optical Barcode Recognition:光学式バーコード認識)は、VCLタイプライブラリ(Windowsプラットフォームのみ)で、その目的はQRコードとバーコード画像を読み取ることです。
次のビデオは、インストール方法を説明しています。
2.デモで使用しているコンポーネントと機能
デモのプロジェクトには2つのパネルがあります。1つは上部にあり、クリックすると画像を選択するTButtonコンポーネントが含まれています。中央にはTScrollbox(スクロール用)コンポーネントと選択した画像を表示するTImageコンポーネントがあります。下部にもう1つのパネルがあり、パネルにはTMemoコンポーネントが含まれています。
これらを組み合わせ、ボタンをクリックし、画像を選択し、そのコードを表示するプロジェクトを作成しています。
次の短いビデオで、その動作をご覧いただけます。
ボタンをクリックすると、TOpenPictureDialogコンポーネントが実行され、画像を選択するためのダイアログが開きます。 選択した画像がTImageコンポーネントに読み込まれ、中央のウィンドウに表示されます。
1 2 3 4 5 |
with OpenPictureDialog do if Execute then begin Memo.Clear; Image.Picture.LoadFromFile(FileName); |
選択した画像がTObrコンポーネント(スキャナー)を使用してスキャンされます。
1 2 3 4 |
Obr.Active := True; try Obr.Picture.Assign(Image.Picture); Obr.Scan; |
画像の読み取り後にコードが検出されない(見つからない)場合は、下部のTMemoコンポーネントに「No barcode found(バーコードが見つかりません)」と書き込みます。
1 2 |
if Obr.BarcodeCount = 0 then Memo.Lines.Append('No barcode found'); |
TObrコンポーネントによってコードが検出されると、OnBarcodeDetectedイベントが発生します。 TObrスキャナーからの結果がイベント内で生成されます。 スキャンされたすべてのシンボルを取得するには、OBRリストの項目であるTObrSymbolを使用します。 この場合、リストには1つのアイテムのみが含まれます。 TObrSymbolは、スキャンされた結果をさまざまなパーツに分解します。 各パーツには異なる情報が含まれています(結果の一部はテキストで表示されます)。
1 2 3 4 5 6 7 8 9 10 11 12 |
procedure TFormMain.ObrBarcodeDetected(Sender: TObject); var i: Integer; Barcode: TObrSymbol; begin Memo.Clear; for i := 0 to Obr.BarcodeCount - 1 do begin Barcode := Obr.Barcode[i]; Memo.Lines.Append(Barcode.SymbologyName + Barcode.SymbologyAddonName + ' ' + Barcode.OrientationName + ' ' + Barcode.DataAnsi); end; end; |
このOBRデモコードは、ここからダウンロードできます。
Delphiで使用できるWINSOFTのOBRライブラリに関する詳細をご覧ください。コンポーネントのトライアル版も、こちらからダウンロードできます。
DelphiおよびC++BuilderプロジェクトでWindowsポータブルデバイス(WPD)を有効にするOBRライブラリは、WinSoft社の製品です。この記事に記載された機能を利用するには、WinSoft社のサイトからOBRライブラリを購入する必要があります。OBRライブラリに関するサポートは、WinSoft社によって提供されます。
Design. Code. Compile. Deploy.
Start Free Trial Upgrade Today
Free Delphi Community Edition Free C++Builder Community Edition