第一次寫博客逾一,因為瀏覽器自帶的預覽pdf功能無法隱藏下載按鈕铸本,所以使用pdf.js來代替。
使用pdf.js步驟
1.在官網(wǎng)下載pdf.js并解壓(地址:PDF.js?)
選擇穩(wěn)定版下載遵堵,下載之后在項目的資源目錄下創(chuàng)建一個文件夾箱玷,壓縮文件解壓到項目的資源目錄下
2.如何預覽pdf
使用pdf.js預覽pdf是很簡單的,鏈接web目錄下的viewer.html頁面陌宿,將pdf文件地址當作fileId的屬性锡足。因為我需要訪問服務器上的pdf文件,所以此處使用的是已經(jīng)編碼后的網(wǎng)絡路徑壳坪,帶有特殊字符(比如'=')舶得,所以需要使用encodeURIComponent函數(shù)對其進行編碼,pdf.js會自動對其進行解碼爽蝴,不需要我們后臺解碼沐批。代碼如下:
3.隱藏下載功能
最簡單的辦法就是隱藏下載按鈕,找到viewer.html里的打印蝎亚,下載按鈕九孩,給其加上display:none屬性。這個辦法有一個隱患就是打開f12把屬性去掉发框,按鈕就又能被看到捻撑。
解決這個問題就是找到pdf/web/viewer.js,注釋掉其中兩行缤底。(不同版本所在行數(shù)可能不同顾患,根據(jù)行數(shù)找不到時請根據(jù)內(nèi)容搜索)
解決了下載按鈕之后,我發(fā)現(xiàn)鼠標焦點在iframe里時 使用ctrl+s也能下載文件个唧。解決這個問題同樣也是找到pdf/web/viewer.js江解,注釋下載代碼就ok了。(不同版本所在行數(shù)可能不同徙歼,根據(jù)行數(shù)找不到時請根據(jù)內(nèi)容搜索)
這樣用戶就無法下載pdf文件了犁河,我們的目的就達到了。