js base64文件转图片
时间: 2023-09-03 10:12:08 浏览: 963
可以使用以下代码将 base64 格式的文件转成图片:
```javascript
function base64ToFile(base64Data, fileName) {
const sliceSize = 1024;
const byteCharacters = atob(base64Data);
const byteArrays = [];
for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {
const slice = byteCharacters.slice(offset, offset + sliceSize);
const byteNumbers = new Array(slice.length);
for (let i = 0; i < slice.length; i++) {
byteNumbers[i] = slice.charCodeAt(i);
}
const byteArray = new Uint8Array(byteNumbers);
byteArrays.push(byteArray);
}
const blob = new Blob(byteArrays, {type: 'image/jpeg'});
const file = new File([blob], fileName, {type: 'image/jpeg'});
return file;
}
const base64Data = 'data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD...';
const fileName = 'image.jpg';
const file = base64ToFile(base64Data, fileName);
console.log(file);
```
在上面的代码中,`base64ToFile` 函数接收两个参数,一个是 base64 格式的数据,另一个是文件名。该函数将 base64 数据转成 `File` 对象,以便于上传或保存到本地。在函数中,我们先将 base64 数据解码成字节数组,然后将字节数组转成 `Blob` 对象,最后将 `Blob` 对象转成 `File` 对象。
阅读全文