2017-04-11 86 views
0

我有一個工作文件系統來保存PDF文件。在作業結束時,我希望能夠將所有這些PDF文件合併爲一個文件(一個接一個頁面)。當我從文件系統下載文件時,我得到了數據uri。我可以調用window.open(data uri),它將打開pdf。我試圖採取2數據uri字符串,並簡單地將它們組合,但它不會打開任何東西。多個數據uri pdf文件到1文件javascript

data:application/pdf;base64,JVBERi0xLjMKJcTl8uXrp/Og0MTGCjQgMCBvYmoKPDwgL0xlbmd0aCA1IDAgUiAvRmlsdGVyIC9GbGF0ZURlY29kZSA+PgpzdHJlYW0KeAGtvV2LLk1uJXq/f0VdD3j7yY+nnio4+GIGM9cNL8z1uN3vORj3QI//P5wlRUZkREqK1Koq2tBNuWpthVKhbyn+8faXt3+8rR9vr/f97e9vz49d/9d/6v/Cj/9T/n/1v+V3/vPt/3v7X//t7f+8PfCf92V9e32ub//3b2//69f/efvn//lfy9v/+19v//w/8N9//S/9lcfbf/31bX8+35778rYsn2+L/Pafb8/XVn70tryXn2zb6/ylX/pLy/Oj/OjjUf/us/zkHWDHnwU/wC8U4F/6Tz3f8Qfrfv7N8yU/2MoPlMAXiDsJVHLGHyk58iMhp1Ao5OAnIznDDwT6ffnooa//2q+DHQL9tj9Odlz+LiBJf+vgEKAGKgsWqJRfOqn0yB5/YzsPVk56/OAkUE8hbD15pj+S71x5/6Ykd78E+tp3br9k/6x... 

如何組合這些數據字符串以獲得一個接一個的頁面?

回答

1

您無法在新窗口中打開2個PDF文件,也​​可以嘗試使用其中一個PDF庫來合併PDF文件,然後在新窗口中打開新創建的合併pef文件。我建議你這樣做library PDF.js

另一種選擇是將文件發送到後端的Web服務進程,並將文件返回到合併文件的客戶端。

+0

你是男人!我製作了一個服務器函數來使用npm包easy-pdf-merge,並簡單地將數據uri保存爲本地fs上的文件,然後使用easy-pdf-merge將它們組合並創建一個新的combined.pdf,然後讀取文件與'base64'合併.pdf獲取數據uri並用正確的數據響應客戶端。像魅力工程謝謝! – user1779362

+0

沒問題,很高興幫助你! –

+0

@DanielBallesteros你可以參考你最後的答案嗎? http://stackoverflow.com/questions/43620852/return-true-if-all-images-uploaded-to-firebase-storage – Nere