直入正題,經過2天的玩弄,發現QR碼的生成有以下三種:
google QR API
相關jquery QR插件
后端語言生成
下面我分別來介紹下這三種方法及優劣分析。
google QR API
這是最簡單的,只需一個鏈接,如:
https://chart.googleapis.com/chart?cht=qr&chs=200x200&choe=UTF-8&chld=L|4&chl=http://www.cnblogs.com/hooray
然后將它放到img標簽里,就能自動生成QR碼圖片了
下面就具體說下鏈接里的參數吧
https://chart.googleapis.com/chart? 這是Google Chart API的頭部,直接照抄就行
&cht=qr 這是說圖表類型為qr也就是二維碼
&chs=200x200 這是說生成圖片尺寸為200*200,是寬*高,這並不是生成圖片的真實尺寸,應該是最大尺寸吧
&choe=UTF-8 這是說內容的編碼格式為UTF-8,此值默認為UTF-8(其他的編碼格式請參考Google API文檔)
&chld=L|4 L代表默認糾錯水平,4代表二維碼邊界空白大小,可自行調節(具體參數請參考Google API文檔)
&chl=XXXX 這是QR內容,也就是解碼后看到的信息,包含中文時請使用UTF-8編碼漢字,否則將出現問題
參數就是這么多了,利用google的QR API就可以制作類似博客簽名的東東(參考文章結束部分)
優點:不占用服務器資源,速度穩定,生成圖片
缺點:不能設置QR碼顏色
相關jquery QR插件
插件有幾個,我主要介紹“jquery.qrcode.js”,它的調用方法非常簡單,就拿官方的demo來看吧
<div id="qrcode"></div> <script> jQuery('#qrcode').qrcode({ render : "table", text : "http://jetienne.com" }); </script>
它可以設置生成的圖片形式是table或者canvas
優點:不占用服務器資源,可設置顏色(插件里是寫死的,不過可以修改插件實現顏色修改)
缺點:不生成圖片,table模式下可能會出錯,canvas部分瀏覽器不支持
后端語言生成
我主要介紹下php的一個QR類,他是基於GD2庫來繪制QR碼的,並且生成圖片,原本不支持顏色修改,不過我稍微修改了一點,可以設置顏色了。
具體的就不多講了,配置好后打開index.php能看到如下界面就OK了,至於如何在項目中使用就自己慢慢研究去吧
優點:生成圖片,可修改顏色
缺點:占用服務器資源
附1:QR碼存儲容量圖