[英]jsPdf using html2canvas.js: Uncaught Error: Supplied data is not a JPEG
[英]jsPdf using html2canvas.js for export pdf from html is not working for large data
嗨,我正在使用jsPdf來制作html內容的pdf,它對於短內容和創建pdf來說很好,但是當我嘗試在html2canvas.js(用於渲染css)的大內容上使用它時,它並沒有創建pdf。 對此的任何建議或示例代碼都將有所幫助。謝謝。
可以為大文件創建pdf。 主要有兩種方法可以執行此操作:
1. html->畫布->圖片-> pdf (我假設您正在嘗試這種方法)
2. html-> pdf (如果html包含svg,則無效)
我建議您選擇(2),除非您有充分的理由選擇(1) (例如,如果您具有svg內容)-這對於瀏覽器來說是非常昂貴的操作,並且瀏覽器也可能崩潰。
1. html->畫布->圖片-> pdf
這在這里非常整潔地描述-https: //github.com/MrRio/jsPDF/issues/339#issuecomment-53327389
我使用此方法的經驗-生成的pdf包含2-3頁以上時崩潰。 (已在最新的chrome和Firefox中測試)
2. html-> pdf
var pdf = new jsPDF('l', 'pt', 'a4');
var options = {
pagesplit: true
};
pdf.addHTML($('body'), 0, 0, options, function(){
pdf.save("test.pdf");
});
與上述方法相比,這是更快的方法。 在1-2秒內生成包含5-6頁的pdf文件!
希望這可以幫助!
https://www.npmjs.com/package/pdfpy
var data = {
//the key as to be same as below
input: "./test.html",
output: "./output.pdf"
}
pdfpy.file(data, function(err, res) {
if(err) throw err
if(res) console.log("success")
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.