[英]What is the fastest way to convert html to pdf using JS or PHP?
我有一個大約 100.000 行的長表,它是動態生成的(從技術上講,它可以是 div)。 需要將此 html 數據導出為 pdf。
我曾嘗試使用html2pdf.js 。 但是當它超過 5000 行時,它開始工作非常緩慢並且導出的 pdf 尺寸很大。 我認為這是由於將 html 保存為圖像,然后將其插入到文檔中。
已經嘗試過html2pdf.php從超過 500 行開始也工作緩慢已經有問題,但文檔大小很好。
已經用 node js 嘗試過html-pdf 。 工作速度比前 2 快得多,但有一個限制。 Node js 腳本在服務器上,當有多個客戶端時,性能會在所有客戶端之間分配,性能會急劇下降。
我正在尋找可以在可接受的時間內將很長的 html 表轉換為 pdf 文檔的庫。
我的需求可以描述為:
1 ) 腳本可以在瀏覽器 (Javascript) 中運行並且應該足夠快,以免讓用戶等待很長時間。
2 ) 腳本可以使用PHP/Node js運行在服務器上,但這里要考慮到多個用戶可以同時請求pdf。
3 ) 對於 Java 或 Python 的示例,可能還有其他一些解決方案,它們將在 Linux 服務器上運行,可以很容易地從瀏覽器觸發?
選項 1 或 2 是最理想的。
謝謝!
其中一條評論(由於某種原因被刪除)建議我嘗試AutoTable - Table plugin for jsPDF 。 謝謝! 這個 js 庫 html2pdf 插件做得非常棒! 以光速工作。
如果您使用 PHP,我會推薦 DomPDF,因為它很簡單。 這是基於他們的快速入門示例的示例:
// reference the Dompdf namespace
use Dompdf\Dompdf;
// instantiate and use the dompdf class
$dompdf = new Dompdf();
$dompdf->loadHtml('hello world'); //complete page DOM goes here
// (Optional) Setup the paper size and orientation
$dompdf->setPaper('A4', 'landscape');
// Render the HTML as PDF
$dompdf->render();
// Output the generated PDF to Browser
$dompdf->stream();
您可以在其存儲庫中找到有關如何安裝和其他示例的更多信息: https : //github.com/dompdf/dompdf
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.