以下一實例使用ZXing Barcode Library, 然後打開系統預設瀏覽器.
範例功能:
- 用戶輸入字串 (只限英文/數字/符號), 產生QR Code 影像
- 開啟相機, 解讀影像, 顯示QR Code 內包含的字串, 打開系統預設瀏覽器
範例使用類別說明:
- Camera - 別從用戶端系統的攝影機擷取視訊
- Timer - 可讓您在指定的時間序列上執行程式碼
- BitmapData - 建立任意調整大小的透明或不透明點陣圖影像,而且在執行階段中以各種方式操作
- com.google.zxing.* - ZXing Barcode Library 包裹, 能解讀QRCode, EAN / ISBN, Code32/128, datamatrix, UPCA, UPCE
Step 1: 建立相機 (Camera 物件)
var camera:Camera = Camera.getCamera(); var video:Video = new Video(WIDTH, WIDTH); camera.setMode(WIDTH, WIDTH, 24.); camera.setQuality(1638400, 85); video.attachCamera(camera); _ui = new UIComponent(); _ui.addChild(video); this.addElement(_ui);
Step 2: 建立計時器, 設定每一秒解讀影像一次 (Timer 物件)
_timer = new Timer(1000, 0); _timer.addEventListener(TimerEvent.TIMER, timerHandler); _timer.start();
Step 3: 最後, 利用zxing 包裹, 解讀影像成字串 (使用com.google.zxing 相關物件)
var lsource:BufferedImageLuminanceSource = new BufferedImageLuminanceSource(bitmapData); var bitmap:BinaryBitmap = new BinaryBitmap(new GlobalHistogramBinarizer(lsource)); var ht:HashTable = getHint(); var res:Result = null; try{ res = _myReader.decode(bitmap, ht); }catch(e:Error){ return; } if(res!=null){ var parsedResult:ParsedResult = ResultParser.parseResult(res); msgTxt.text = parsedResult.getDisplayResult(); }
大家可以 [下載], 然後一齊玩玩QR Code.
當然除URL 外, 還可製作自家應用程式或遊戲.
參考資料: http://zxing.riaforge.org/
2 則留言:
看了一下你的文章,感覺很棒,有這個榮幸交個朋友吧^^
十分歡迎, 大家交流下心得 ^^
張貼留言