笔记

Javascript/CSS

Vue/React

其它

杂物室

杂谈

工具

影像

sleep
宝可梦
西塞尔
Dedsec
Scarlet
Violet
P5
满月
黄昏
深夜
经典
回到顶部

base64和Blob转换 #73

Anuluca     Date : 2020-10-22   Tags : 2

base64转Blob

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
function base64ToBlob(base64, mimeType) {
// 去掉URL的头,并转换为byte
let byteString = atob(base64.split(',')[1]);

// 创建二进制数组
let ab = new ArrayBuffer(byteString.length);
let ia = new Uint8Array(ab);

// 将每个字符的Unicode编码保存到Uint8Array中
for (let i = 0; i < byteString.length; i++) {
ia[i] = byteString.charCodeAt(i);
}

// 创建Blob对象并返回
return new Blob([ab], { type: mimeType });
}

// 示例用法
const base64Data = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...";
const blob = base64ToBlob(base64Data, 'image/png');

Blob转base64

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
function blobToBase64(blob) {
return new Promise((resolve, reject) => {
const reader = new FileReader();
reader.onloadend = function () {
resolve(reader.result);
};
reader.onerror = function (error) {
reject(error);
};
reader.readAsDataURL(blob);
});
}

// 示例用法
const blob = new Blob(['Hello, world!'], { type: 'text/plain' });

blobToBase64(blob).then(base64String => {
console.log(base64String); // 输出 Base64 字符串
}).catch(error => {
console.error('转换失败:', error);
});
由于某些原因,博客图床于5月26日惨遭爆破,目前正在整理需要的图片并迁移存活的图片到新图床,预计6月10日重新上线网站
   
THE END
   
讨论
 
© 2018 - 2024 Anuluca ▌友情链接 Tsuki's blog | Poke amice | 夜航星
  复制成功!