从pdf.js下载base64生成的pdf

时间:2014-07-24 14:15:13

标签: javascript html pdf pdf.js

我按照一些步骤在pdf.js中查看base64生成的PDF,它运行良好。我只有一个问题,我无法下载。

我收到此错误:未捕获的TypeError:无法在此指令中读取未定义的属性“split”:

var url = this.url.split('#')[0];

其实我没有任何网址,我把我的b64字符串放在localStorage中,我直接在viewer.js中打开它:

var b64Array=new Uint8Array(base64DecToArr(localStorage['pdf'])); 
var int8View = b64Array;

所以我通过标准网址访问查看器,没有参数:/pdfjs/web/viewer.html

有办法解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

对于那些迫不及待的人,我在官方pdfjs github上得到答案。

这是复制/粘贴答案:

  

我看到DEFAULT_URL不是为了保存数组而设计的。   如果使用数组,PDFView.open的可能解决方案:   禁用下载按钮;   或者,提供假的this.uri,例如'document.pdf'

因此,为了允许下载,我们只需要在this.url上添加一个值。