vue将qrcodejs生成的二维码下载到本地
dom结构如下
<div class="qr-code "
id="qr-code"></div>
通过qrcodejs生成二维码之后,需要 将二维码下载到本地
- 安装html2canvas
- 将如上dom转成base64图片
html2canvas(dom,{scale:3},canvas=>{
let base64=canvas.toDataURL('image/jpeg')
base64=base64.split(',')
base64=base64[1]
let raw=window.atob(base64)
let rawLength=raw.length
let uInt8Array=new Uint8Array(rawLength)
for(let i=0;i<raw.length;i++){
uInt8Array[i]=raw.charCodeAt(i)
}
let blob=new Blob([uInt8Array],{type:'image/jpeg'})
let aDom=document.createElement('a')
aDom.download='test'
aDom.href=URL.createObjectURL(blob)
aDom.click()
}
)