js 如何将base64转换成pdf并且不会报Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.
时间: 2024-06-14 21:04:13 浏览: 202
在JavaScript中,可以使用atob()函数将base64编码的字符串转换为二进制数据,然后使用Blob对象创建一个URL,最后将URL赋值给一个链接元素的href属性,即可实现将base64转换为PDF并下载。
以下是一个示例代码:
```javascript
function base64ToPdf(base64String) {
// 将base64字符串转换为二进制数据
var binaryString = atob(base64String);
// 创建一个Uint8Array来存储二进制数据
var bytes = new Uint8Array(binaryString.length);
for (var i = 0; i < binaryString.length; i++) {
bytes[i] = binaryString.charCodeAt(i);
}
// 创建Blob对象
var blob = new Blob([bytes], { type: 'application/pdf' });
// 创建URL并赋值给链接元素的href属性
var url = URL.createObjectURL(blob);
// 创建一个链接元素并设置下载属性
var link = document.createElement('a');
link.href = url;
link.download = 'file.pdf';
// 模拟点击链接进行下载
link.click();
// 释放URL对象
URL.revokeObjectURL(url);
}
// 调用函数并传入base64字符串
base64ToPdf('base64字符串');
```
请注意,上述代码中的'base64字符串'需要替换为实际的base64编码的字符串。
阅读全文