2014年8月12日 星期二

Generate QR Code by using Google Chart API

API Reference 基本上就是參考這裡:
https://google-developers.appspot.com/chart/infographics/docs/qr_codes

API Root URL 網址:
https://chart.googleapis.com/chart?

會用到的參數大致就這四個:
cht=qr //這是固定一定要的chs=<width>x<height> //產生QR Code圖的寬高
choe=UTF-8 //編碼預設定UTF-8,所以也可以不設定
chl=Hello%20world //QR Code的內容
chld=<error_correction_level>|<margin> //容錯率 預設是L(7%)也可以設定 M/Q/H
margin 是留邊,單位是QR Code的內格區塊寬度數,預設是4



比較重要的地方是:因為是以URL傳送,所以QR Code內容需要先做 URI 編碼動作,
把一些如空白或一些特殊字元轉成%XX的16進位碥碼,以避免出現錯誤的內容。
若是在 JavaScripte 中可以用 encodeURIComponent(uri); 先把內容編碼。
PHP 中則可用 string urlencode ( string $str ); 函數來編碼。

所以直接以API網址來產生QR Code的例如下(Sample URL):
https://chart.googleapis.com/chart?cht=qr&chs=200x200&chld=L|0&chl=Hello%20world


或是以 JavaScripte 來動態產生(generate by JavaScript dynamically):



補上一個網路分享的QR Code(還有Bar Code等的)解碼器(Chart Decode Tool)
http://zxing.org/w/decode.jspx

沒有留言: