我有一個應用程序生成一個HTML頁面,其中包含用戶可以編輯的數據。 最後我用jsPDF生成一個.pdf文件。 有沒有什麼辦法可以在我的服務器端數據庫上保存這個生成的.pdf?使用jsPDF在服務器端保存pdf
我正在使用PrimeFaces。
在此先感謝
我有一個應用程序生成一個HTML頁面,其中包含用戶可以編輯的數據。 最後我用jsPDF生成一個.pdf文件。 有沒有什麼辦法可以在我的服務器端數據庫上保存這個生成的.pdf?使用jsPDF在服務器端保存pdf
我正在使用PrimeFaces。
在此先感謝
更新我的其他用戶的解決方案:
我發現它返回我BASE64字符串的jsPDF的.output('datauristring')
方法。
然後,字符串通過JSON發送到我的備份bean並按照我的意願轉換。
看,如果你打破了這個問題,它歸結爲你發現了什麼。向這個方向提問可能會更容易,例如:我怎樣才能得到字符串中jsPDF的輸出? – Kukeltje
準確地說,經驗教訓。謝謝Kukeltje先生 – jlwollinger
我建議使用wkhtmltopdf。
這是一個開源的跨平臺命令行工具,用於從html內容生成pdf文件。
因此,根據您的要求,您可以做的是,您需要將html內容發送到服務器並將此內容保存到html文件中。
將html內容保存到html後,您可以像在java中執行MS-DOS命令一樣調用wkhtmltopdf。
例子:new ProcessBuilder("wkhtmltopdf.exe", htmlFilePath, pdfFilePath);
一旦生成PDF文件,您可以讀取和存儲到數據庫中。
用戶已經在使用jspdf了......如果要做java並且你想要推薦一些不同的東西,我會建議https://github.com/flyingsaucerproject更好的集成 – Kukeltje
謝謝Kukeltje先生和Ravi MCA先生 – jlwollinger
謝謝大家的幫助!我找到了我的解決方案:
一旦用戶按下按鈕生成.pdf,我將保存他填入數據庫的所有數據,只是數據。
當用戶想要查看他生成的pdf時,我會用第一次提交時收集的數據生成一個新的。
謝謝大家的回答,他們很有幫助。
這是不是問題的「答案」。你用完全不同的方式解決了它。但請記住,如果PDF需要某種「證明」,這種「解決方法」可能不是正確的解決方案! – Kukeltje
我知道這不是正確的解決方案,Kukeltje,但我的最後期限即將到來,我必須前進。 變通辦法最終總會遇到問題,但我必須暫時跳過它。 謝謝您的關注Kukeltje先生,我真的很感激它 – jlwollinger
這個問題不是JavaScript,不是java-se,不是html,也不是PrimeFaces相關的。你在哪裏產生pdf?客戶端?你可以將它存儲在輸入元素中嗎?然後這個問題歸結爲獲取輸入元素的值到服務器。請把你的問題分解成實際可以解決的問題。現在,它是廣泛和不明確的方式 – Kukeltje
你的意思是你想上傳你的文件在一些存儲庫來保存它?!?確實有點不清楚。 –
對不起,不清楚,是的,我在客戶端生成pdf。重點在於,在此HTML表格中,用戶能夠鍵入文本並更改數據庫中應用程序獲取的某些數據。 我想保存由jsPDF庫生成的.pdf。 – jlwollinger