// 下载
npm i qrcode -S
// 引入
import QRCode from 'qrcode'
// 使用
<div class="flex-y-center">
<img :src="QRImgUrl" />
<el-button type="primary" @click="saveBas64Img(QRImgUrl, '分销码')">下载二维码</el-button>
</div>
creatQrCode(QRlink) { // QRlink是二维码的内容
let opts = {
errorCorrectionLevel: "L",//容错级别
type: "image/png",//生成的二维码类型
quality: 0.3,//二维码质量
margin: 5,//二维码留白边距
width: 220,//宽
height: 220,//高
text: QRlink,//二维码内容
color: {
dark: "#000",//前景色
light: "#fff"//背景色
}
};
QRCode.toDataURL(QRlink, opts , (err, url) => {
if (err) throw err
//将生成的二维码路径复制给data的QRImgUrl
this.QRImgUrl = url
})
},
saveBas64Img (url, name) {
let base64 = url.toString()
let byteCharacters = atob(
base64.replace(/^data:image\/(png|jpeg|jpg);base64,/, "")
)
let byteNumbers = new Array(byteCharacters.length)
for (let i = 0; i < byteCharacters.length; i++) {
byteNumbers[i] = byteCharacters.charCodeAt(i)
}
let byteArray = new Uint8Array(byteNumbers)
let blob = new Blob([byteArray], {
type: undefined
})
let aLink = document.createElement("a")
aLink.download = `${name}.png` //这里写保存时的图片名称
aLink.href = URL.createObjectURL(blob)
aLink.click()
}
文章来源地址https://www.toymoban.com/news/detail-502894.html
文章来源:https://www.toymoban.com/news/detail-502894.html
到了这里,关于vue 生成二维码为base64格式并下载到电脑的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!