const handleDownload = () => {
const imgUrl1 ="https://cube.elemecdn.com/6/94/4d3ea53c084bad6931a56d5158a48jpeg.jpeg";
fetch(imgUrl1)
.then(response => response.blob())
.then(blob => {
// 创建一个Blob URL
const url = URL.createObjectURL(blob);
// 创建一个a标签用于下载
const a = document.createElement('a');
a.style.display = 'none';
a.href = url;
// 设置下载的文件名,这里假设是"avatar.jpeg"
a.download = `证书.png`;
document.body.appendChild(a);
a.click();
// 释放Blob URL
URL.revokeObjectURL(url);
// 清理a标签
document.body.removeChild(a);
})
.catch(error => console.error('下载失败:', error));
// const base64String = "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD..."; // 示例Base64字符串
//
// // 提取Base64编码部分
// const byteString = atob(base64String.split(',')[1]);
//
// // 创建一个Blob对象
// const ab = new ArrayBuffer(byteString.length);
// const ia = new Uint8Array(ab);
// for (let i = 0; i < byteString.length; i++) {
// ia[i] = byteString.charCodeAt(i);
// }
//
// const blob = new Blob([ab], { type: 'image/jpeg' });
//
// // 创建一个a标签用于下载
// const a = document.createElement('a');
// a.style.display = 'none';
// a.href = URL.createObjectURL(blob);
// a.download = 'image.jpeg'; // 设置下载的文件名
// document.body.appendChild(a);
// a.click();
//
// // 释放Blob URL
// URL.revokeObjectURL(a.href);
//
// // 清理a标签
// document.body.removeChild(a);
}
vue3图片下载
qq_459131702024-09-05 22:38
相关推荐
油丶酸萝卜别吃4 小时前
utils.js 说明文档zyplayer-doc7 小时前
VuePress类静态文档站和动态知识库怎么选:两种技术路线的适用场景leisoo80977 小时前
100GBA股股票数据怎么存ClickHouseRedisMySQLJSON完整对比不会代码的小猴7 小时前
21. 泛型编程上紫禁玄科8 小时前
Shai-Hulud:npm生态的自我复制蠕虫风暴东风破_8 小时前
后端API没写好,前端难道干等着吗?百变梦仔8 小时前
从读项目到纠偏交付:我把 Codex 前端任务闭环升级成了第二版用户938515635078 小时前
从前后端分离到前端接口工程:React + MockJS + Vite 解析一只旭宝8 小时前
细讲C加加【9】C++ std::function与std::bind详解|仿函数、绑定器、类成员绑定、占位符、成员偏移指针用户938515635078 小时前
从零在浏览器里跑 DeepSeek-R1:WebGPU + Transformers.js 全链路实战(三)