前面是将文件上传到webgl进程,本篇是将文件从webgl进程中下载文件到浏览器的下载目录中。
通用,只需要 二进制数组和文件名。
添加一段代码
mergeInto(LibraryManager.library,
{
BinFileDownloader: function (str, fn ,type) {
console.log("start download");
var msg = Pointer_stringify(str);
var fname = Pointer_stringify(fn);
var contentType = Pointer_stringify(type);
function fixBinary(bin) {
var length = bin.length;
var buf = new ArrayBuffer(length);
var arr = new Uint8Array(buf);
for (var i = 0; i < length; i++) {
arr[i] = bin.charCodeAt(i);
}
console.log("恢复二进制完成");
return buf;
}
//atob解码使用base64编码的字符串
var binary = fixBinary(atob(msg));
console.log("创建blog数据");
var data = new Blob([binary], { type: