下載PDF.js(會附帶下載資源)
後面會附帶下載地址,其中包含兩個文件夾build和web文件夾,build文件夾是PDF.js核心文件,web下爲展示PDF的視圖界面viewer.html;
在項目中要在線預覽PDF,進行以下步驟:
方法1:
新建一個html頁面,在頁面中使用iframe標籤,通過iframe標籤嵌套viewer.html,如果是隻加載本地文件,在viewer.js修改默認的pdf文件路徑(DEFAULT_URL字段)即可。
<iframe src="web/viewer.html" width="100%" height="800px" id="Iframe"></iframe>
修改viewer.js的默認的pdf的文件路徑
var DEFAULT_URL = 'test.pdf';
方法2:
但是我們的需求往往不是加載一張靜止的PDF文件,所以我們通常用的比較多的是第二種方法加載遠程服務器返回pdf文件流,然後在viewer.html的url後面添加file=http://127.0.0.1:8088/PDF/test.pdf;
我在js代碼中是這樣使用的:
$("#Iframe").attr("src","../www/assets/third/pdfjs/web/viewer.html?file="+originUrl+"");
這樣就實現了預覽遠程服務器的文件流,但是pdf.js不支持跨域請求,所以會報錯:file origin does not match viewer’s,試了很多種方法仍然報錯,所以簡單粗暴的方法就是把viewer.js的判斷遠程地址的代碼註釋掉即可。
需要在viewer.js中註釋的代碼如下:
// if (origin !== viewerOrigin && protocol !== 'blob:') {
// throw new Error('file origin does not match viewer\'s');
// }
然後重新加載發現可以完美的加載出來了。
pdf.js下載地址:https://download.csdn.net/download/fuzhongbin/10754996