簡體   English   中英

使用html2canvas.js從html導出pdf的jsPdf無法處理大數據

[英]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文件!

希望這可以幫助!

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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM