JS前端生成二维码的几种方式「建议收藏」

JS前端生成二维码的几种方式「建议收藏」这里简单介绍几种前端实现js生成二维码的方式


Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

qrcode.js && jquery.qrcode.js

没有找到该库的原始出处,有知道的朋友欢迎指出

本地使用script标签引入

HTML结构

<div id="qrcodeimg" ></div>
<script src="/qcode/qrcode.js" type="text/javascript"></script>
<script src="/qcode/jquery.qrcode.js" type="text/javascript"></script>

Script文件

var creatqrcode = function (text="二维码生成器,可将文字、分享链接、电话等纯文本或wifi链接信息转换并生成为二维码形式") {
    $('#qrcodeimg').html("");
    $('#qrcodeimg').qrcode({
        render: !!document.createElement('canvas').getContext ? 'canvas' : 'table',
        width: 200, height: 200, text: text
    });
}
$(function(){
    // 初始化生成二维码
    creatqrcode("aaaaaaaa")
})

优缺点

优点:简单易用,体积小,两个文件压缩后仅10kb

缺点:不支持中文及中文符号,仅支持英文、数字、英文符号,使用中文,会生成二维码,但是二维码扫描后会有乱码

示例

生成的节点

JS前端生成二维码的几种方式「建议收藏」

中文二维码

JS前端生成二维码的几种方式「建议收藏」

 英文二维码

JS前端生成二维码的几种方式「建议收藏」


QRcode

github地址:QRcode

可在线可本地可安装

HTML结构

<div id="qrcodeimg" ></div>
<script src="/qrcode.min.js" type="text/javascript"></script>

Script文件

var creatqrcode = function (text="二维码生成器,可将文字、分享链接、电话等纯文本或wifi链接信息转换并生成为二维码形式") {
    $("#qrcodeimg").html("");
    new QRCode('qrcodeimg', {
        text: text,
        width: 200,
        height: 200,
        colorDark: '#000000',
        colorLight: '#ffffff',
        correctLevel: QRCode.CorrectLevel.H //纠错等级
    });
}
$(function(){
    // 初始化生成二维码
    creatqrcode("我是整顿侠,我要整顿职场不良风气!")
})

优缺点

优点:简单易用,通用性强

缺点:(仅指我当前使用版本)当中英文混合输入时,长度判断混淆,容易内容超出最大长度,导致空白

示例

生成的节点

JS前端生成二维码的几种方式「建议收藏」

二维码

JS前端生成二维码的几种方式「建议收藏」


arale-qrcode

github地址:arale-qrcode

可在线可本地可安装

HTML结构

<div id="qrcodeimg" ></div>
<script src='arale-qrcode.js' type="text/javascript"></script>

Script文件

var creatqrcode = function (text="二维码生成器,可将文字、分享链接、电话等纯文本或wifi链接信息转换并生成为二维码形式", logo="") {
    // 生成二维码
    var codeFigure = new AraleQRCode({
        "render": "svg",  // 生成的类型 'svg' or 'table'
        "text": text, // 需要生成二维码的链接
        "size": 200,// 生成二维码大小
        "foreground": "#000000", // 二维码颜色
        "image": logo, // 二维码中间logo
        "imageSize": 50, // 二维码中间logo大小
    });
    var share_tools = document.querySelector('#qrcodeimg');
    // 先清空之前的二维码,在填充新的二维码
    $(share_tools).empty();
    share_tools.appendChild(codeFigure);
}
$(function(){
    // 初始化生成二维码
    creatqrcode("我是整顿侠,我要整顿职场不良风气!")
})

优缺点

优点:简单易用,通用性强,功能强大

缺点:生成的为svg图片,当中心有logo时,使用html2canvas下载的文件,中心图片缺失

示例

生成的节点

JS前端生成二维码的几种方式「建议收藏」

坏图二维码

JS前端生成二维码的几种方式「建议收藏」

正常二维码

JS前端生成二维码的几种方式「建议收藏」


 Awesome-qr

github地址:Awesome-qr

可在线可本地可安装

HTML结构

<img id="qrcodeimg" ></img>
<script src='/ScriptsMain/awesome-qr.js' type="text/javascript"></script>

Script文件

var creatqrcode = function (text, logo, background) {
    // 二维码生成参数
    var text = text || '二维码生成器,可将文字、分享链接、电话等纯文本或wifi链接信息转换并生成为二维码形式'
    var size = 200;
    var colorDark = "#000000";
    var margin = 9
    var background = background || "#ffffff";
    var logo = logo || "";
    $("#qrcodeimg").css({width:size+"px",height:size+"px"})
    new AwesomeQR.AwesomeQR({
        text: text, // 内容
        size: size, // 二维码大小
        margin: margin, // 二维码白边大小
        colorDark:colorDark, // 二维码颜色
        colorLight: "rgba(159,255,255,0)", // 二维码背景颜色
        logoImage : logo, // 二维码中间logo
        logoScale : 0.3, // 二维码中间logo大小
        logoCornerRadius : 0, // 二维码中间logo圆角
    }).draw()
    .then((dataURL) => {
        $("#qrcodeimg").attr("src", dataURL)
    })
    .catch((err) => {
        console.error(err);
    });
}
$(function(){
    // 初始化生成二维码
    creatqrcode("我是整顿侠,我要整顿职场不良风气!")
})

优缺点

优点:简单易用,通用性强,功能强大,可配置项多,不生成标签,仅生成dataurl,方便使用和下载

缺点:暂未发现

示例

生成的节点

JS前端生成二维码的几种方式「建议收藏」

二维码

 JS前端生成二维码的几种方式「建议收藏」


文中所提到的库的本地文件版

qrcode.js && jquery.qrcode.js :基于jquery的qrcode.zip-Javascript文档类资源-CSDN下载

QRcode:qrcode.min.js-Javascript文档类资源-CSDN下载

arale-qrcode:arale-qrcode.js-Javascript文档类资源-CSDN下载

awesome-qr:awesome-qr.js-Javascript文档类资源-CSDN下载

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183773.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • PAC模式和全局模式「建议收藏」

    PAC模式和全局模式「建议收藏」PAC模式和全局模式,两种模式优缺点如下:【PAC模式】也就是智能分流模式,根据规则去匹配你访问的网站,仅加速国外网站,国内网站不受影响,非常智能;优点:节省流量,国内网站依旧走本地网络,速度快,绝大部分国外网站都走代理,速度也快。缺点:少部分国外网站不走代理,无法起到加速效果,甚至无法访问(解决方案:自己编辑PAC规则列表,将不走代理的国外网址加入进去,或者直接选择全局模式)。【全局模式】国内、国外所有网站都走代理。优点:可访问全球所有网站。缺点:所有网站都走代理,访问国内网站速度

    2022年10月19日
  • macbook电脑字体乱码了_mac系统语言改中文

    macbook电脑字体乱码了_mac系统语言改中文按照步骤来亲测可解决①如果没有~/.zshrc这个文件,那么新建一个该文件②新建命令:touch~/.zshrc③打开文件文件编辑vim~/.zshrc④修改内容并保存exportLANG=en_US.UTF-8⑤重启终端即可发现中文可以显示了……

    2022年10月30日
  • linux连接Redis客户端

    linux连接Redis客户端linux命令下载redis-stable#官网下载,这里使用wget直接下载的[linux]$wgethttp://download.redis.io/redis-stable.tar.gz#解压[linux]$tar-xzvfredis-stable.tar.gz#进入解压目录[linux]$cdredis-stable#编译[linux]$make#拷贝入bin目录[linux]$cpsrc/redis-cli/usr/local/bin/验证redi

    2022年5月5日
  • 4-2 setting中一定要将ROBOTSTXT_OBEY = False的注释去掉[通俗易懂]

    4-2 setting中一定要将ROBOTSTXT_OBEY = False的注释去掉[通俗易懂]#Obeyrobots.txtrules##默认遵循robots协议的,默认去读取每个网站上的robots协议ROBOTSTXT_OBEY=False转载于:https://www.cnblogs.com/xudj/p/10163723.html

    2022年5月4日
  • 到底什么是集群&分布式

    到底什么是集群&分布式

    2020年11月12日
  • 最新海康摄像机、NVR、流媒体服务器、回放取流RTSP地址规则说明[通俗易懂]

    最新海康摄像机、NVR、流媒体服务器、回放取流RTSP地址规则说明[通俗易懂]本文档主要介绍海康威视设备直播预览RTSP、录像回放RTSP、流媒体取流的RTSPURL和IE直接预览、回放的HTTPURL。RTSP为取流协议,取到码流后需要解码显示,可以通过VLC播放器或者EasyPlayer播放器进行测试,IE等浏览器网页不支持RTSP协议直接取流预览或者回放,需要安装OCX插件,这也是目前大部分安防厂家的做法。目前也有很多支持RTSP进行网页无插件直播的流媒…

    2022年6月11日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号