バーコード
2
カメラを起動してバーコードスキャンを行いたい
2
RuntimeクラスのShowCodeScannerメソッドでカメラを起動し、Biz/Browser単体でバーコードスキャンを行うことが可能です。
読取時の詳細な設定は引数で指定します。
それぞれの引数の設定内容については、以下の通りです。
形式:Runtime.ShowCodeScanner( sourceType [, format [, extraParams ]] );
sourceType
リアカメラ(端末背面側)起動またはフロントカメラ(液晶側)起動を指定します。
format
読取対象バーコードの種類を指定します。デフォルト値はCODE_FORMAT_ALL(全てのバーコードを読取)になっています。
extraParams
読取時の細かい設定を指定します。Array型引数のキーに設定名、値に設定値を格納します。
例えば下記のサンプルコードでは、読取モード(単発読取・連続読取)を設定しています。
戻り値(format)で取得される種別情報
値
種別
1
CODE128
2
CODE39
8
CodaBar(NW-7)
16
DataMatrix
32
EAN-13 (JAN-13)
64
EAN-8 (JAN-8)
128
ITF (Interleaved Two of Five)
256
QRコード
512
UPC-A
1024
UPC-E
2048
PDF417
4096
Aztec
65535
読み取り可能な全てのフォーマット
[ サンプルコード ]
Form frmReadBarcode { X = 0; Y = 0; Width = 456; Height = 514; /* 読取モード格納用 */ Number mode; GroupBox GroupBox1 { X = 10; Y = 136; Width = 430; Height = 60; Title = "バーコード読取"; FontFace = $BOLD; } Label Label1 { X = 10; Y = 10; Width = 428; Height = 30; HorizontalAlign = $CENTER; VerticalAlign = $CENTER; Value = "バーコード読取機能サンプル"; Transparent = $TRUE; FontFace = $BOLD; FontSize = 14; FgColor = $3333FF; } Label Label2 { X = 16; Y = 157; Width = 69; Height = 24; HorizontalAlign = $CENTER; VerticalAlign = $CENTER; Transparent = $TRUE; Value = "読取モード"; } Label Label3 { X = 10; Y = 44; Width = 429; Height = 77; Value = "【操作方法】\n読取モードを選択し、「読取開始」ボタンを押下すると読取を開始します。\n"; Value += "読取を終了すると、読み取ったバーコードの情報と読取数がEditBoxに表示されます。"; } /* カメラ読取方法の選択(単発・連続) */ OptionButton paramMode { X = 95; Y = 154; Width = 213; Height = 32; UseChange = $TRUE; OptionItem item[2] { Layout = $HORIZONTAL; Width = 90; Height = 30; } Value = 0; item[0].Title = "単発読取"; item[1].Title = "連続読取"; item[0].Value = $FALSE; item[1].Value = $TRUE; /* モード変更時 */ Function OnChange(e) { switch( e.from.value ) { case 0: ^.mode = $FALSE; break; case 1: ^.mode = $TRUE; break; default: ^.mode = $FALSE; break; } } } /* カメラ読取開始 */ Button btnScanCode { X = 313; Y = 213; Width = 128; Height = 32; Title = "読取開始"; Function onTouch(e) { try { /* リアカメラから読み取り */ var sourceType = Runtime.SourceTypeRearCamera; /* 全てのバーコードが読取対象 */ var code_format = Runtime.CODE_FORMAT_ALL; /* 選択した読取モードを設定 */ var extraParams = new Array; extraParams["CONTINUOUS_MODE"] = ^.mode; /* 読取開始 */ var rtm = new Runtime; var result = rtm.ShowCodeScanner(sourceType, code_format, extraParams); /* 1件以上読取した場合 */ if(result.length > 0) { var txt = ""; var i = 0; /* 読取結果をEditBoxに表示 */ for(i = 0; i < result.length; i++) { txt += str(result[i].data) + " (format:" + str(result[i].format) + ")\n"; } ^.EditBox1.Value = "読取バーコード:\n" + str(txt) + "\n" + "読取数:" + str(result.length); } else { /* 読取キャンセル時 */ ^.EditBox1.Value = "読取はキャンセルされました"; } } catch(e) { /* エラー発生時 */ ^.EditBox1.Value = e.Method + "-" + str(e.Code) + ":" + e.message; return; } } } /* 読取結果表示用 */ EditBox EditBox1 { X = 14; Y = 249; Width = 428; Height = 218; } }
管理番号:BcdHt_002
Biz-Collections Bizの宝箱 トップへ
Biz/Browser HT・Biz/Browser SmartDevice・Biz/Browser AI TIPS集 トップへ