在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
Adobe 創建了可攜式文檔格式 (PDF) 啟用包含豐富文本和圖形的文檔共享。要在線打開 PDF 文件,需要一個不同的程序。PDF 文件在當今環境中對於大規模出版是不可或缺的。它們經常在商業中用來生成文檔和發票。開發者生成 PDF 文件來滿足客戶需求。現代圖書館使創建 PDF 比以往任何時候都更容易。在為生成自己渲染的 PDF 文件的項目選擇合適的庫時,需要考慮各種方面,包括構建、閱讀和轉換能力。
考慮例如,我們希望客戶能夠下載並查看我們發票的副本。我們同樣重視的是這份發票的準確佈局、打印方式和頁面數量。在本節中,我們將探討一些最受歡迎的 PDF 文件查看庫。
HTML2PDF 結合了 jsPDF 和 Html2Canvas 的功能到一個模組中,將網頁和模板轉換成完整的 PDF 文檔。
按照以下步驟從您的網站創建一個 PDF:
使用 NPM 在您的伺服器本地安裝 html2pdf JavaScript 庫,或者將其添加到您的 HTML 代碼中,如下面的示例所示。
創建一個名為 generatePDF
的函數,用於將目標網頁部分轉換為 PDF。使用 getElementById
函數選擇所需的部分。
在將其傳遞給 html2pdf
之前,通過將其添加到 opt
變數來修改格式選項。這允許您自定義 PDF 生成的各種設置。
viewPDF
函數。此函數將生成 PDF 並在單獨的瀏覽器標籤中打開。<!DOCTYPE html>
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js"></script>
<script>
function viewpdf() {
const element = 'Hello World!';
var opt = {
margin: 1,
filename: 'Demopdf.pdf',
image: { type: 'jpeg', quality: 0.98 },
html2canvas: { scale: 2 },
jsPDF: { unit: 'in', format: 'letter', orientation: 'portrait' }
};
// Choose the element that our invoice is rendered in.
//html2pdf().set(opt).from(element).save();
let worker = html2pdf().set(opt).from(element).toPdf().output('blob').then((data) => {
//console.log(data)
let fileURL = URL.createObjectURL(data);
window.open(fileURL);
})
}
</script>
</head>
<body>
<button onclick="viewpdf()">View PDF</button>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js"></script>
<script>
function viewpdf() {
const element = 'Hello World!';
var opt = {
margin: 1,
filename: 'Demopdf.pdf',
image: { type: 'jpeg', quality: 0.98 },
html2canvas: { scale: 2 },
jsPDF: { unit: 'in', format: 'letter', orientation: 'portrait' }
};
// Choose the element that our invoice is rendered in.
//html2pdf().set(opt).from(element).save();
let worker = html2pdf().set(opt).from(element).toPdf().output('blob').then((data) => {
//console.log(data)
let fileURL = URL.createObjectURL(data);
window.open(fileURL);
})
}
</script>
</head>
<body>
<button onclick="viewpdf()">View PDF</button>
</body>
</html>
開源軟體 jsPDF 使用 JavaScript 創建 PDF 文件。它生成一個作為 PDF 頁面的頁面對象,並根據提供的格式化進行格式化。在 GitHub 上最常用且維護良好的 PDF 庫也稱為 jsPDF。它為 Node.js 和 Web 瀏覽器提供符合 AMD 模組標準的簡單易用模組。
至於 PDFKit,其 API 遵循命令式模型,這可能會使構建複雜的佈局變得困難。用 JavaScript 嵌入字體唯一需要的額外步驟是將字體轉換為 TTF 文件,這是一個簡單的過程。在下面的代碼示例中,我們創建了一個 PDF 文件,然後在 Web 瀏覽器的單獨標籤頁中打開創建的 PDF。結果將類似於上面顯示的圖像。
<!DOCTYPE html>
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.0.272/jspdf.debug.js"></script>
<script>
function viewPDF() {
var pdf = new jsPDF({
orientation: 'p',
unit: 'mm',
format: 'a5',
putOnlyUsedFonts:true
});
pdf.text("Hello World", 20, 20);
window.open(pdf.output('bloburl'))
}
</script>
</head>
<body>
<button onclick="viewPDF()">View Pdf</button>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.0.272/jspdf.debug.js"></script>
<script>
function viewPDF() {
var pdf = new jsPDF({
orientation: 'p',
unit: 'mm',
format: 'a5',
putOnlyUsedFonts:true
});
pdf.text("Hello World", 20, 20);
window.open(pdf.output('bloburl'))
}
</script>
</head>
<body>
<button onclick="viewPDF()">View Pdf</button>
</body>
</html>
IronPDF for Node.js 簡化了以程式方式創建和自訂 PDF 文件的過程。由高效文件處理庫的可信提供商 Iron Software 所開發,IronPDF 提供了在 Node.js 環境中產生 PDF 文件的穩健解決方案。它可以無縫整合至 Node.js 專案,為開發者提供強大的工具,以輕鬆生成、格式化和編輯 PDF 文件。
IronPDF 庫具有廣泛的功能,包括能夠在新或現有的 PDF 文件中拆分和合併頁面、讀取和編輯現有的 PDF 文件、從 PDF 文件中提取圖像、添加文字、圖形、書籤、水印、頁眉和頁腳至 PDF 文件,這些操作都不需要 Acrobat Reader。從 CSS 和 CSS 媒體文件中,可以生成 PDF 文檔。IronPDF 允許用戶創建、上傳和更新新的和已有的 PDF 表單。
IronPDF for Node.js 的主要功能:
以下代碼範例使用 JavaScript 創建 PDF 文件,然後直接從應用程序中查看:
import {PdfDocument} from "@ironsoftware/ironpdf";
import fs from "fs";
import open from "open";
(async () => {
// Create a PDF from an HTML string
const pdf = await PdfDocument.fromHtml("<h1>Hello World</h1>");
// Save the PDF to a temporary file
const filePath = "html-with-assets.pdf";
await advancedPdf.saveAs(filePath);
// Open the PDF file using the default system application
open(filePath);
})();
在此代碼中:
有關 PDF 相關任務的更多代碼範例,請訪問這個 程式碼範例 頁面。
輸出將按照上述圖片生成和顯示。欲了解更多關於IronPDF的資訊,請參閱 這裡.
最後,需要注意的是,上面第一頁顯示的JavaScript代碼可能會被濫用,並且在其他人使用時可能會帶來安全風險。將此類代碼納入網頁或網站時,需要考慮未經授權訪問和數據安全漏洞的風險。此外,還應考慮與過時瀏覽器以及不同操作系統和瀏覽器的兼容性問題。
相反,IronPDF Node.js庫提供了增強的安全措施,以防止潛在威脅。它不依賴於特定的瀏覽器,並且與所有主流瀏覽器兼容。開發人員只需幾行代碼,就可以輕鬆地使用IronPDF創建和閱讀PDF文件。
該庫提供了各種授權選項,以滿足不同開發人員的需求,包括一個 免費試用 開發者授權和額外的 授權 可供購買。Lite 套裝,價格為 $749,包含永久許可證、一年的產品支援和升級選項,無需支付經常性費用。這些許可證可用於開發、測試和生產環境。此外,也可用於其他語言如 C# .NET, Java 和 Python。造訪 IronPDF 網站以獲取更多詳細資訊。