base64流转pdf并预览

2,754 阅读1分钟
		// base64转blob
        const base64ToBlob = function (base64Data) {
            let arr = base64Data.split(','),
                fileType = arr[0].match(/:(.*?);/)[1],
                bstr = atob(arr[1]),
                l = bstr.length,
                u8Arr = new Uint8Array(l);

            while (l--) {
                u8Arr[l] = bstr.charCodeAt(l);
            }
            return new Blob([u8Arr], {
                type: fileType
            });
        };
        // blob转file
        const blobToFile = function (newBlob, fileName) {
            newBlob.lastModifiedDate = new Date();
            newBlob.name = fileName;
            return newBlob;
        };
        // 调用
        const blob = base64ToBlob(`data:application/pdf;base64,${base64}`);
        const file = blobToFile(blob, 'judianPig');
        let fileURL= URL.createObjectURL(file)
        window.open(fileURL)

注意此处base64转blob格式文件头部:data:application/pdf;base64,