h5端实现长按二维码保存图片功能
1、生成二维码
<script> export default {
methods: {
// 生成二维码 crateQRcode () {
if (this.qrcode) {
this.qrcode.clear(); this.qrcode.makeCode(this.shareResult.url); // 生成新的二维码 } else {
this.qrcode = new QRCode('qrcode', {
width: 111, //宽度 height: 111, // 高度 text: this.shareResult.url, // 二维码内容--一般为后端传递过来的链接地址,当扫码二维码的时候,会进行相应的跳转 render: 'canvas',// 设置渲染方式(有两种方式 table和canvas,默认是canvas) }); } this.toSaveImage(); }, // 展示二维码 showQRcode () {
this.$nextTick(() => {
this.crateQRcode(); }) }, }, } </script>
讯享网
2、将二维码转化为图片
讯享网<script> export default {
methods: {
// 二维码转化为图片 toSaveImage() {
// 保存图片 this.$nextTick(async () => {
let imageWrapper = document.getElementById("qrcode"); try {
let canvas = await html2canvas(imageWrapper, {
height: 111, width: 111, backgroundColor: null, useCORS: true, allowTaint: true, scrollX: 0, scrollY: 0, dpi: window.devicePixelRatio * 2, }); let res = canvas.toDataURL("image/png"); this.qrCodeShow = false; document.getElementById('imgCode').setAttribute('src',res); } catch (err) {
console.log(err) } }); }, } </script>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/41962.html