直入正题,经过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码的,并且生成图片,原本不支持颜色修改,不过我稍微修改了一点,可以设置颜色了。

PHP QR Code:官方地址 胡尐睿丶修改版

具体的就不多讲了,配置好后打开index.php能看到如下界面就OK了,至于如何在项目中使用就自己慢慢研究去吧

优点:生成图片,可修改颜色

缺点:占用服务器资源

附1:QR码存储容量图