首页 > 代码库 > 4种方法生成二维码 (js 控制canvas 画出 二维码)
4种方法生成二维码 (js 控制canvas 画出 二维码)
随着网络的迅速发展 发展 发展,二维码的应用将会越来越多。同时很多只是很平凡的二维码,请拿起你的手 把这个二维码 设计起来吧。下面分享了几个非常好的二维码设计。
二维码原理:
二维条码/二维码可以分为堆叠式/行排式二维条码和矩阵式二维条码。 堆叠式/行排式二维条码形态上是由多行短截的一维5条码堆叠而成;矩阵式二维条码以矩阵的形式组成,在矩阵相应元素位置上用“点”表示二进制“1”, 用“空”表示二进制“0”,“点”和“空”的排列组成代码。
最近对二维码产生了兴趣 研究了一下二维码 这里生出的术语 qrcode 容错性较高。
数据表示方法
深色模块表示二进制“1”,浅色模块表示二进制“0”。
纠错能力
· L级:约可纠错7%的数据码字
· M级:约可纠错15%的数据码字
· Q级:约可纠错25%的数据码字
· H级:约可纠错30%的数据码字
上面的设计 就很完美的利用了 qrcode的容错性,非常nice 也非常有创意!!
1.google 接口
<?php
$urlToEncode="http://www.csd2n.net";//要生成二维码的网址
generateQRfromGoogle($urlToEncode);
function generateQRfromGoogle($chl,$widhtHeight =‘150‘,$EC_level=‘L‘,$margin=‘0‘)
{
$url = urlencode($url);
echo ‘<img src="http://chart.apis.google.com/chart?chs=‘.$widhtHeight.‘x‘.$widhtHeight.‘&cht=qr&chld=‘.$EC_level.‘|‘.$margin.‘&chl=‘.$chl.‘" alt="QR code" widhtHeight="‘.$size.‘" widhtHeight="‘.$size.‘"/>‘;//Google API接口,若失效可到Google网址查询最新接口
}
?>
2..js代码 转换为 canvas (重点)
demo: http://hxend.com/jsqrcode/test/
<script type="text/javascript" src="http://sandbox.runjs.cn/uploads/rs/142/gjxgxu0g/qrgen.min.js"></script>
<div id=qrcode></div>
<script type="text/javascript">
qrcode(document.getElementById(‘qrcode‘),{
data:‘http://geraldl.net‘
});
</script>
3. 图片接口
<img src="http://qrcoder.sinaapp.com?t=hello world">
4.demo 里面http://hxend.com/jsqrcode/test/ 代码
<!doctype html>
<html>
<head>
<title>QRCode</title>
<script type="text/javascript" src="http://files.cnblogs.com/webers/qrcode-light.js"></script>
<script type="text/javascript" src="http://files.cnblogs.com/webers/qrgen.js"></script>
</head>
<body>
<div>
<h1>二维码生成</h1>
<div>
图片: <img id=qrimg src=http://www.2cto.com/uploadfile/2014/1219/20141219081025437.png>
<label><input id=qrclearedges type=checkbox checked>清理边缘</label>
</div>
<div><input id=fimg type=file></div>
<div>文本: <textarea id=qrtext>http://www.btgoogle.com</textarea></div>
<div>大小: <input id=cellSize type=range min=2 max=10 value=http://www.mamicode.com/6>
<table>
<tr>
<td rowspan=2>效果:</td>
<td colspan=3><input id=cellEffect type=range min=-50 max=50 step=5 value=http://www.mamicode.com/0>
</tr>
<tr id=cellEffectStops>
<td align=left><a href=http://www.mamicode.com/# data=l>液体
<td align=center><a href=http://www.mamicode.com/# data=s>方块
<td align=right><a href=http://www.mamicode.com/# data=r>圆
</tr>
</table>
<div>
Foreground color: <input id=colorFore type=color value=http://www.mamicode.com/#4169e1>
Background color: <input id=colorBack type=color value=http://www.mamicode.com/#ffffff>
Outside-border color: <input id=colorOut type=color value=http://www.mamicode.com/#cd5c5c>
Inside-border color: <input id=colorIn type=color value=http://www.mamicode.com/#191970>
</div>
<button id=qrgen>生成</button>
</div>
<div id=qrcode></div>
<script src="http://files.cnblogs.com/webers/take.js"></script>
</body>
</html>
4种方法生成二维码 (js 控制canvas 画出 二维码)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。