最近寫了一個簡單的工具網站,可以上傳PDF文件,加完水印/文字后下載下來,整個過程唯一需要后端的時候就是需要把文件傳到服務器上,提供一個遠程的PDF路徑,方便操作,本來可以直接拋開服務端,直接在瀏覽器上解析,但是會丟失文字,所以采用了操作遠程PDF文件的方式。直通車(鏈接).
技術棧:vue + elementui + pdf-lib.js
由於實在太懶,雖然網站很簡單,還是使用了elementui去布局,具體的PDF文件操作,可以參考pdf-lib.js的doc,這里記錄一個寫過程中的問題。
生成寫的pdfDocument后,在下載過程中遇到了困難。庫本身提供了save方法,可以生成Uint8Array數組,但是直接轉Blob下載時,下載的PDF文件無法打開,經過多方查詢,最終使用了一個下載庫,完美解決。
希望本文能給有PDF處理需求的小伙伴提供思路。