在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
便攜式文檔格式 (PDF) 由 Adobe 開發,用於共享包含文本和圖形的文件。需要一個額外的程序才能在線打開 PDF 文檔。PDF 文件在當今社會中對於重要信息來說非常重要。許多企業使用 PDF 文件來創建文檔和發票。為了滿足客戶需求,開發人員會生成 PDF 文檔。由於現代庫的出現,創建 PDF 從未如此容易。
要為使用此類庫的項目選擇理想的庫,我們必須權衡多個因素,包括構建、閱讀和轉換功能。
在本教程中,我們將介紹多種用於生成 PDF 的 JavaScript 庫。我們將重點分析 JS 庫和實際應用場景,重點關注三個主要點:
閱讀完本文後,您將能夠為您的 JavaScript 應用程序選擇理想的 PDF 庫。最後,我們還將介紹 IronPDF,一個有用且高效的PDF庫。
printJS
方法並傳遞元素 ID 給可打印屬性列印
方法考慮這樣的情景,我們希望客戶能夠下載並打印我們的發票副本。我們需要這張發票能夠準確且適當地打印出來。在這裡,我們將仔細看看一些可將該發票從HTML文件格式轉換為PDF的眾多庫。
通常,若要列印 PDF 檔案的內容,我們會將其下載到電腦上,打開它,然後選擇列印選項。而 JavaScript 使得直接從網頁列印 PDF 檔案變得簡單。你所需要的只是網站上的一個 iframe 或能夠動態構建的一個 iframe,添加文件並列印它。我將演示如何使用 JavaScript 列印 PDF 檔案。iframe 用於在一個網頁內顯示另一個網頁。為了顯示網頁,iframe 需要知道它的來源。
<html>
<head>
<title>javascript print pdf</title>
</head>
<body>
<iframe
src="Demo.pdf" id="myFrame"
frameborder="0" style="border:0;"
width="300" height="300">
</iframe>
<p>
<input type="button" id="bt" onclick="print()" value="Print PDF" />
</p>
</body>
<script>
let print = () => {
let objFra = document.getElementById('myFrame');
objFra.contentWindow.focus();
objFra.contentWindow.print();
}
</script>
</html>
<html>
<head>
<title>javascript print pdf</title>
</head>
<body>
<iframe
src="Demo.pdf" id="myFrame"
frameborder="0" style="border:0;"
width="300" height="300">
</iframe>
<p>
<input type="button" id="bt" onclick="print()" value="Print PDF" />
</p>
</body>
<script>
let print = () => {
let objFra = document.getElementById('myFrame');
objFra.contentWindow.focus();
objFra.contentWindow.print();
}
</script>
</html>
至於列印 PDF 文件,可以使用 iframe 顯示文件的內容,然後使用 JavaScript 列印內容。在這兩種情況下,都需要使用 iframe。在上面的例子中,有一個具有來源的 iframe (PDF). 還有一個按鈕類型的輸入元素。
按鈕的onclick
屬性將調用print
方法。
Print.js 的主要目的是讓我們能夠從應用程式內部列印 PDF 檔案,而無需導航離開、從使用者界面匯入並列印它們或使用嵌入式技術。這適用於使用者只需要列印 PDF 檔案,而不需要開啟或下載它們的特殊情況。
當使用者要求列印在伺服器端生成的報告時,例如,這會很有幫助。這些報告會以 PDF 文件形式返回給您。這些檔案可以在不需要開啟的情況下列印。在我們的應用程式中,Print.js 提供了一種方便的方法來列印這些檔案。
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.js"></script>
<script src="https://printjs-4de6.kxcdn.com/print.min.js"></script>
<link href="https://printjs-4de6.kxcdn.com/print.min.css" rel="stylesheet">
</head>
<body>
<div id="print-area" class="print-main">
<table>
<tr>
<th>Name</th>
<th>Age</th>
</tr>
<tr>
<td>AAA</td>
<td>25</td>
</tr>
<tr>
<td>BBB</td>
<td>24</td>
</tr>
</table>
</div>
<button id="btnPrint">Print</button>
<script>
$(document).ready(function(){
$("#btnPrint").on("click",function(){
printJS({
printable: 'print-area',
type: 'html'});
})
})
</script>
</body>
</html>
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.js"></script>
<script src="https://printjs-4de6.kxcdn.com/print.min.js"></script>
<link href="https://printjs-4de6.kxcdn.com/print.min.css" rel="stylesheet">
</head>
<body>
<div id="print-area" class="print-main">
<table>
<tr>
<th>Name</th>
<th>Age</th>
</tr>
<tr>
<td>AAA</td>
<td>25</td>
</tr>
<tr>
<td>BBB</td>
<td>24</td>
</tr>
</table>
</div>
<button id="btnPrint">Print</button>
<script>
$(document).ready(function(){
$("#btnPrint").on("click",function(){
printJS({
printable: 'print-area',
type: 'html'});
})
})
</script>
</body>
</html>
以上的程式碼可用於直接從網站列印 PDF 文件。它顯示列印時會列印 ID 為 "print-area" 的 HTML 元素內的所有 HTML 字串。
IronPDF 是一個全面的Node.js PDF庫,以其準確性、易用性和速度而見長。它提供大量功能,用於直接從HTML、URL和React中的圖像生成、編輯和格式化PDF。支援包括Windows、MacOS、Linux、Docker和雲端平台如Azure和AWS等多種平台,IronPDF確保了跨平台的兼容性。其用戶友好的API允許開發人員迅速將PDF生成和操作整合到他們的Node.js專案中。
IronPDF for Node.js 的主要特點:
優化的性能:IronPDF的設計旨在達到最佳性能,具備完全的多執行緒和異步支援。這確保了高效的PDF生成,使其適用於性能至關重要的應用程序。
以下是一個從 HTML檔案, HTML 字串,和 網址 保持列印格式:
import {PdfDocument} from "@ironsoftware/ironpdf";
(async () => {
const pdfFromUrl = await PdfDocument.fromUrl("https://getbootstrap.com/");
await pdfFromUrl.saveAs("website.pdf");
const pdfFromHtmlFile = await PdfDocument.fromHtml("design.html");
await pdfFromHtmlFile.saveAs("markup.pdf");
const pdfFromHtmlString = await PdfDocument.fromHtml("<p>Hello World</p>");
await pdfFromHtmlString.saveAs("markup_with_assets.pdf");
})();
如需了解有關 PDF 任務的更多程式碼範例,請訪問此 程式碼範例 頁面。
使用者可以看到上面的 JavaScript 代碼,但可能會被他人濫用。此方式使用原始代碼是有可能的。此外,在網站上添加危害數據傳輸安全的代碼並不困難。不同的瀏覽器對上述的 JavaScript 庫有不同的看法。因此,代碼必須在多種系統中運行後才能發布。因為一些新功能不被舊版瀏覽器支持,我們也需要查看這些功能的瀏覽器兼容性。上述的庫可以生成 PDF 文件。使用者還必須對他們操作的腳本有一定的熟悉程度。
藉由 IronPDF 對 JavaScript 框架和庫的簡單集成過程,優秀 文檔 範例程式碼示例和響應技術支持,開發人員可以在短時間內啟動和運行,使其成為生成和列印專業級PDF的Node.js相關應用程序的首選。
IronPDF 提供 免費試用,因此您可以在做出明智決定之前測試其完整功能。它也適用於其他語言,如 C# .NET, Java 和 Python。造訪 IronPDF 請訪問網站以獲取更多詳情。下載 IronPDF for Node.js 來自 這裡.