javascript生成二维码

简介: javascript生成二维码

摘要:


  

百度百科上是这样介绍二维码的:二维码(Quick Response Code),又称二维条码,它是用特定的几何图形按一定规律在平面(二维方向)上分布的黑白相间的图形,是所有信息数据的一把钥匙。在现代商业活动中,可实现的应用十分广泛,如:产品防伪/溯源、广告推送、网站链接、数据下载、商品交易、定位/导航、电子商务应用、车辆管理、信息传递等。如今智能手机扫一扫(简称313)功能的应用使得二维码更加普遍,随着国内物联网产业的蓬勃发展,更多的二维码技术应用解决方案被开发,二维码成为移动互联网入口真正成为现实。

  

我们在上网时随处可见的是二维码,那么在前端如何生成二维码呢?今天我就来分享下前端生成二维码。


简介:


  

QRCode.js是js的一个库,跨浏览器支持HTML5画布和表格标记在DOM中。我们所使用的就是基于QRCode.js。


浏览器:



IE6~10, Chrome, Firefox, Safari, Opera, Mobile Safari, Android, Windows Mobile, ETC.

jquery-qrcode:

  

jquery-qrcode特点:操作简单,体积小,压缩之后只有14k,但是不支持中文编码。


<script src="http://cdn.staticfile.org/jquery/2.0.0/jquery.min.js"></script>
<script type="text/javascript" src="../jquery.qrcode.min.js"></script>
<div id="qrcode"></div>
<script>
$(function(){
    $('#qrcode').qrcode("http://www.cnblogs.com/xiyangbaixue");
    // 更详细的配置
    // $('#qrcode').qrcode({
    //     text: "http://www.cnblogs.com/xiyangbaixue", // 要编码的字符串
    //     width: 50, // 定义宽度
    //     height: 50, // 定义高度
    //     background: "#ccc", // 背景色
    //     foreground: "red" // 前景色
    // });
})
</script>


效果:

image.png

 

qrcodejs:


  

qrcodejs特点:中文生成的二维码扫描不会出现乱码,且可以选择使用哪种元素来画二维码。


<script type="text/javascript" src="jquery.min.js"></script>
    <script type="text/javascript" src="qrcode.js"></script>
    <div id="qrcode"></div>
    <script>
      new QRCode(document.getElementById("qrcode"), "http://www.cnblogs.com/xiyangbaixue");
      // 或者
      // new QRCode(document.getElementById("qrcode"), {
      //     text: "http://www.cnblogs.com/xiyangbaixue",
      //     width: 50,
      //     height: 50,
      //     background: "#ccc",
      //     foreground: "red"
      // });
    </script>


使用svg:



<script type="text/javascript" src="jquery.min.js"></script>
    <script type="text/javascript" src="qrcode.js"></script>
    <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
      <g id="qrcode"/>
    </svg>
    <script type="text/javascript">
    var qrcode = new QRCode(document.getElementById("qrcode"), {
        width : 100,
        height : 100,
        useSVG: true
    });
    qrcode.makeCode("http://www.cnblogs.com/xiyangbaixue");
    // qrcode.clear(); // 清除二维码
    </script>


效果:

image.png

配置参数:


render string


配置用哪个节点元素画二维码,选项有table、svg和canvas


默认的选择顺序为 canvas -> svg -> table


text string


要编码的字符串


默认:""


width number


二维码的长,单位是px


需要注意的是,当使用table或者svg绘制二维码时,会适当减小,使得能够整除二维码矩阵的维度。


默认:256


height number


二维码的宽,单位是px


需要注意的是,当使用table或者svg绘制二维码时,会适当减小,使得能够整除二维码矩阵的维度。


默认:256


correctLevel number


纠错级别,可取0、1、2、3,数字越大说明所需纠错级别越大


默认:3


background color


背景色


默认:#FFFFFF


foreground color


前景色


默认:#000000


附录:


  

二维码生成原理:http://www.thonky.com/qr-code-tutorial/

相关文章
|
编解码 JavaScript 前端开发
jsQR 一个完全独立的javascript 二维码识别库
jsQR 是一款纯粹的由javascript实现的二维码识别库,可以在浏览器端使用,也可以在后端node.js环境使用。我之前使用过其他的识别库,例如:qrcode-reader 或其他,在使用上都比较麻烦,而且识别率并不高。jsQR是后来发现的,感觉(没有实际对比验证)jsQR识别率要更高些,使用起来也更简单,不需要安装其他依赖软件。
jsQR 一个完全独立的javascript 二维码识别库
|
3月前
|
JavaScript
js生成二维码和解析二维码
js生成二维码和解析二维码
25 0
|
10月前
|
JavaScript
js生成二维码和解析二维码
js生成二维码和解析二维码
136 0
|
JavaScript 前端开发
【JavaScript】关于jquery把网址变成二维码
【JavaScript】关于jquery把网址变成二维码
81 0
【JavaScript】关于jquery把网址变成二维码
|
Web App开发 JavaScript 前端开发
QRCode.js:使用 JavaScript 生成二维码
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.
1889 0
|
Web App开发 JavaScript 前端开发
|
Web App开发 JavaScript 前端开发
用纯JavaScript实现的微信二维码图片生成器
QRCode.js是javascript实现二维码(QRCode)制作生成库。 QRCode.js有着良好的跨浏览器兼容性(高版本使用HTML5的 Canvas,低版本IE使用table元素绘制),而且QRCode.js没有任何依赖。只需要引用一个JS。
1463 0
|
Web App开发 JavaScript 前端开发
javascript生成二维码
摘要:   百度百科上是这样介绍二维码的:二维码(Quick Response Code),又称二维条码,它是用特定的几何图形按一定规律在平面(二维方向)上分布的黑白相间的图形,是所有信息数据的一把钥匙。
1302 0
|
Web App开发 JavaScript 前端开发
Javascript生成二维码(QR)
原文:Javascript生成二维码(QR) 网络上已经有非常多的二维码编码和解码工具和代码,很多都是服务器端的,也就是说需要一台服务器才能提供二维码的生成。本着对服务器性能的考虑,这种小事情都让服务器去做,感觉对不住服务器,尤其是对于大流量的网站,虽然有服务器端缓存,毕竟需要大量的CPU运算时间,这或多或少也是很大的一块压力。
1399 0
|
2月前
|
JavaScript
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
27 0