(一)web页面效果:

(二)执行结果:

(三)vue代码实例:

1)安装qrcode-vue库:npm install --save qrcode-vue

2)vue代码

<template><div class="div-box"><qrcode-vueid="qrcodeBox":size="qrcodeVue.size":value="qrcodeVue.value":bgColor="qrcodeVue.bgColor":fgColor="qrcodeVue.fgColor"></qrcode-vue><el-button type="primary" icon="el-icon-document" size="small" @click="downloadCode">下载二维码图片</el-button></div>
</template><script>import qrcodeVue from 'qrcode-vue'export default {name: 'Test',components: { qrcodeVue },data () {return {qrcodeVue: {size: 150,bgColor: '#67C23A', //背景色fgColor: '#FFFFFF', //前景色value: 'qrCode value', //二维码值logo: require('@/assets/logo.png') //logo图片}}},created () {},mounted () {},methods: {downloadCode(){//找到canvas标签let myCanvas = document.getElementById('qrcodeBox').getElementsByTagName('canvas')let img = document.getElementById('qrcodeBox').getElementsByTagName('img')// // //创建一个a标签节点let a = document.createElement('a')// //设置a标签的href属性(将canvas变成png图片)let imgURL = myCanvas[0].toDataURL('image/jpg')let ua = navigator.userAgentif (ua.indexOf('Trident') != -1 && ua.indexOf('Windows') != -1) {// IE内核 并且  windows系统 情况下 才执行;var bstr = atob(imgURL.split(',')[1])var n = bstr.lengthvar u8arr = new Uint8Array(n)while (n--) {u8arr[n] = bstr.charCodeAt(n)}var blob = new Blob([u8arr])window.navigator.msSaveOrOpenBlob(blob,row.num+'('+row.materialNum+')'+ '.' + 'png')} else if (ua.indexOf('Firefox') > -1) {//火狐兼容下载let blob = this.base64ToBlob(imgURL) //new Blob([content]);let evt = document.createEvent('HTMLEvents')evt.initEvent('click', true, true) //initEvent 不加后两个参数在FF下会报错  事件类型,是否冒泡,是否阻止浏览器的默认行为a.download = row.num+'('+row.materialNum+')' //下载图片名称,如果填内容识别不到,下载为未知文件,所以我这里就不填为空a.href = URL.createObjectURL(blob)a.dispatchEvent(new MouseEvent('click', {bubbles: true,cancelable: true,view: window})) //兼容火狐} else {//谷歌兼容下载img.src = myCanvas[0].toDataURL('image/jpg')// a.href = myCanvas[0].toDataURL('image/png').replace('image/png', 'image/octet-stream')a.href = img.src//设置下载文件的名字a.download =  '二维码下载图片名称'//点击a.click()}       }}}
</script><style>
.div-box {width:fit-content;height:fit-content;padding: 2px;border: 1px dashed #f69c55;position: relative;text-align: center;
}
</style>

vue二维码生成与图片下载相关推荐

  1. vue二维码生成插件 - npm安装篇

    vue二维码生成插件 - npm安装篇 具体使用: 1. 安装: npm install vue-qr --save 2. 引入和声明 //在需要生成二维码的文件中引入比如qrCode.vue imp ...

  2. iOS二维码生成中间带图片Logo

    iOS二维码生成中间带图片效果图: ViewController.h 1 #import <UIKit/UIKit.h> 2 @interface ViewController : UIV ...

  3. vue二维码生成可自定义logo

    代码已上传至github github代码地址:https://github.com/Miofly/mio.git <template xlang="wxml">< ...

  4. vue二维码生成和打印

    二维码生成 存放二维码 <div id="qrCode" class="qrCode"><div id='code' class=" ...

  5. vue二维码生成且带文字图片下载

    (一)web页面效果: (二)执行结果: (三)vue代码实例: 1)安装qrcode-vue库:npm install --save qrcode-vue 2)安装html2canvas库:npm ...

  6. Winform中使用zxing实现二维码生成(附dll下载)

    场景 zxing.dll下载 https://download.csdn.net/download/badao_liumang_qizhi/11623214 效果 实现 新建Winform程序,将上面 ...

  7. vue二维码生成、打印及识别

    生成二维码 引入QRCode模块 npm install --save qrcode import QRCode from 'qrcode'; 页面代码 批量创建二维码及打印,所以加了个v-for & ...

  8. nodejs 实现二维码生成及图片合成

    游戏前端需要做分享功能.生成二维码后 在指定的图片上添加二维码和邀请码 生成新的图片 如图所示 1.使用 qr-code生成二维码 /*** 根据url 地址生成 二维码*/async createQ ...

  9. uniapp H5 二维码生成

    vue 二维码生成步骤: 1. 引入二维码 import QRCode from 'qrcodejs2' 2. html 3. 二维码生成事件 creatQrCode() { var qrcode = ...

  10. js 实现二维码生成

    我们可以使用qrcodejs来实现js生成二维码,qrcodejs是用于JavaScript的跨浏览器QRCode生成器,可以十分简单的实现二维码生成 一:下载qrcodejs插件 qrcode的地址 ...

最新文章

  1. 服务器测速,php在线测速
  2. 【PHPExcel】生成Excel文件
  3. android查看报错日志,android运行错误日志帮看下 不懂啊
  4. java web 图书管理系统_图书管理系统,源代码 Java初级小项目
  5. SPH算法(求最小代价树)
  6. matlab虚拟现实之V-Realm Builder2建模第二部分
  7. 自学python书籍怎么选-学习Python可以看书籍学习吗?老男孩Python入门课程
  8. Finereport安装
  9. keyword can not be an expression
  10. lol刷金币python脚本_用Python写王者荣耀刷金币脚本
  11. C#chart控件如何同时显示两条曲线?
  12. Golang sort包Search函数源码分析
  13. Nature子刊 | AI驱动的药物开发是一把双刃剑
  14. 汽车以太网芯片IP的功能安全验证和优化
  15. 2021年程序人生的随想总结
  16. html5 video首次观看禁止快进,Video Speed Controller - 快进/后退/回看在线视频
  17. HNUCM 1985: 小h的书桌
  18. 一份理想的程序员工作
  19. GIS(一)——在js版搜索地图上添加Marker标记
  20. 【zip导出】下载导出包含图片,excel,pdf的zip压缩包

热门文章

  1. 计算机专业英语中常见的前缀和后缀,专业英语词根与前后缀.ppt
  2. windows 通过快捷键来复制粘贴当前日期时间到剪贴板
  3. 【程序员2公务员】一、基本认知
  4. VxWorks6.6开发共享库指南要点
  5. vue中yarn install报错:info There appears to be trouble with your network connection. Retrying…
  6. iPhone 计算机 桌面,变身iOS?让Windows 10的桌面和苹果一样美
  7. 24V转12V10A带使能脚同步整流AH2305D
  8. Android 9 (P)在user模式下无法使用fastboot烧录怎么破
  9. 陆羽茶交所严建红:陆羽茶产业互联网三螺旋模式
  10. 本地连接受限或无连接的解决方法