js实现base64图片的下载

示例代码:来源于ChatGPT

//下载小程序二维码
function downloadAppletCode () {
	 var base64String=$('#base64Str').attr('src');//获取img标签
	 downloadBase64Img(base64String,'小程序二维码.png');
    return false;
}

function downloadBase64Img(base64URL,fileName) {  
	  // 创建a标签,用于触发下载  
	  const a = document.createElement('a');  
	  // 将 a 标签的 download 属性设置为要下载的文件名  
	  a.download = fileName || 'image';  
	  // 创建 Blob 对象,并获取 base64 数据的 MIME 类型  
	  const mimeType = base64URL.match(/:(.*?);/)[1];  
	  // 将 base64 数据转换为字节数组  
	  const byteCharacters = atob(base64URL.split(',')[1]);  
	  const byteNumbers = new Array(byteCharacters.length);  
	  // 将字节数组填充到 Uint8Array 中  
	  for (let i = 0; i < byteCharacters.length; i++) {  
	    byteNumbers[i] = byteCharacters.charCodeAt(i);  
	  }  
	  const byteArray = new Uint8Array(byteNumbers);  
	  // 创建 Blob 对象  
	  const blob = new Blob([byteArray], {type: mimeType});  
	  // 将 Blob 对象的 URL 赋值给 a 标签的 href 属性  
	  a.href = URL.createObjectURL(blob);  
	  // 将a标签暂时添加到 body 中,触发下载  
	  document.body.appendChild(a);  
	  a.click();  
	  // 下载完成后,将 a 标签从 body 中移除  
	  document.body.removeChild(a);  
} 
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值