簡體   English   中英

使用 JS 或 PHP 將 html 轉換為 pdf 的最快方法是什么?

[英]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.

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