成都网站建设设计

将想法与焦点和您一起共享

基于原生javaScript生成带图片二维码的方法

这篇文章主要介绍了基于原生javaScript生成带图片二维码的方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

兰溪网站建设公司创新互联,兰溪网站设计制作,有大型网站制作公司丰富经验。已为兰溪1000+提供企业网站建设服务。企业网站搭建\外贸网站建设要多少钱,请找那个售后服务好的兰溪做网站的公司定做!

使用链接生成二维码主要是使用qr.js或者其他,把链接转化为二维码的形式,在使用canvas时需要设置画布的尺寸,生成的颜色。


  
  
js   function createQr () { // 生成带图片二维码    const qrcode = qr('http://baidu.com') // 转化链接    const canvas = this.$refs.canvas    const ctx = canvas.getContext('2d')    const size = 128 / qrcode.moduleCount //128设置的二维码尺寸    const scale = window.devicePixelRatio / getPixelRatio(ctx)    canvas.height = canvas.width = 128e * scale    ctx.scale(scale, scale)    qrcode.modules.forEach((row, rdx) => {     row.forEach((cell, cdx) => {      ctx.fillStyle = cell ? '#000' : '#fff' // 设置二维码颜色和背景颜色      var w = (Math.ceil((cdx + 1) * size) - Math.floor(cdx * size))      ctx.fillRect(Math.round(cdx * size), Math.round(rdx * size), w, w)     })    })    var image = document.createElement('img')    var imgcode =  document.getElementById('imgcode')    image.src = '/upload/otherpic75/10385.png' //二维码中间图标    image.onload = () => {     var dwidth = 128 * 0.2 // 设置图片大小     var dx = (128 - dwidth) / 2     var dheight = image.height / image.width * dwidth     var dy = (this.size - dheight) / 2     image.width = dwidth     image.height = dheight     ctx.drawImage(image, dx, dy, dwidth, dheight)     imgcode.src = canvas.toDataURL()    }  },  getPixelRatio (ctx) {    return ctx.webkitBackingStorePixelRatio || ctx.backingStorePixelRatio || 1  }

感谢你能够认真阅读完这篇文章,希望小编分享的“基于原生javaScript生成带图片二维码的方法”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!


网页标题:基于原生javaScript生成带图片二维码的方法
当前链接:http://chengdu.cdxwcx.cn/article/pjposs.html