image.png
小程序處理PDF需求的“甩鍋”記錄
需求是這樣的丈攒,后端會生成一個單頁面PDF文件,需要在小程序中展示并下載狞甚,方便用戶存檔或者打印脾还。
然后我就到處去踩坑,做技術選型入愧,結果綠暗花明又一村鄙漏,把這個需求改成了讓后端生成圖片展示了。
成功把任務甩給了別人棺蛛。
image.png
以下就是我甩任務的正經(jīng)理由怔蚌。
1.下載到本地,并提示用戶通過瀏覽器下載
兼容性:
- 完美旁赊,適配iOS和安卓的各個版本
缺點:
- 可能會出現(xiàn)網(wǎng)絡劫持
- 用戶需要離開微信操作桦踊,使用體驗不流暢
- 如果文件本身比較敏感,在瀏覽器中請求有可能出現(xiàn)網(wǎng)絡劫持
2.下載到本地终畅,并提示通過分享的方式轉(zhuǎn)發(fā)PDF
為了保存而顯示分享頁面籍胯,雖然不完美。如果PDF本身較大离福,推薦此方法杖狼。
兼容性:
- 需要用到wx.shareFileMessage方法,要求微信版本較高
缺點:
- 兼容性問題
詳細說明: developers.weixin.qq.com/miniprogram…
3.把PDF轉(zhuǎn)為圖片預覽下載
前端實現(xiàn)需要pdfjs庫妖爷,本身比較大蝶涩,而且需要生成一個webview頁面進行渲染,建議由后端實現(xiàn)絮识。 Java的話可以使用org.apache.pdfbox工具包 詳細說明: blog.csdn.net/qq_40378034…
兼容性:
- 完美绿聘,適配iOS和安卓的各個版本
缺點:
- 使用此方法的前提為PDF為小文件,如果頁面較多次舌,用戶交互就復雜度就直線上升熄攘。
如果你也有相關需求需要解決,可以復制粘貼以上內(nèi)容給產(chǎn)品經(jīng)理彼念,一本正經(jīng)的把工作甩給后端挪圾。
image.png