IronPDF 教學 HTML 轉 PDF HTML to PDF in Java Darrius Serrant 更新日期:7月 22, 2025 Download IronPDF Maven 下載 JAR 下載 Start Free Trial Copy for LLMs Copy for LLMs Copy page as Markdown for LLMs Open in ChatGPT Ask ChatGPT about this page Open in Gemini Ask Gemini about this page Open in Grok Ask Grok about this page Open in Perplexity Ask Perplexity about this page Share Share on Facebook Share on X (Twitter) Share on LinkedIn Copy URL Email article This article was translated from English: Does it need improvement? Translated View the article in English 本教程指導 Java 開發人員使用 IronPDF 庫將 HTML 內容轉換為像素完美的 PDF(可攜式文檔格式)文檔. IronPDF 是一個功能齊全的 PDF 轉換和 PDF 處理庫。 IronPDF is available for both .NET and Java programming languages. 本教程涵蓋了該庫在 Java 應用程序中轉換 HTML 內容(文件、標記等)的使用。 用於將 HTML 轉換為 PDF 在 .NET 應用程序中的教程可在 HTML 到 PDF .NET 教程 中查看. 如何在 Java 中將 HTML 轉換為 PDF 安裝 Java 庫以將 HTML 轉換為 PDF 使用 renderHtmlAsPdf 方法將 HTML 字串轉換為 PDF 文檔 在 Java 中從網站 URL 生成 PDF 文件 使用 renderHtmlFileAsPdf 方法將 HTML 文件轉換為 PDF 文件 將生成的 PDF 保存為新文件 開始使用 立即開始在您的項目中使用 IronPDF 並免費試用。 第一步: 免費啟動 1. 為 Java 安裝 IronPDF PDF 庫 在 Java 項目中組合 IronPDF 庫有兩種方式: 在 Maven 配置的 Java 項目中添加 IronPDF 作為依賴項 下載 IronPDF JAR 文件並將其手動添加到項目的類路徑中。 以下部分將簡要介紹這兩種安裝方法。 選擇 1:作為 Maven 依賴項安裝 IronPDF 要在Java專案中使用Maven安裝IronPDF,請將以下工件添加到Java專案的pom.xml檔案的依賴部分。 <dependencies> <!-- IronPDF Library --> <dependency> <groupId>com.ironsoftware</groupId> <artifactId>ironpdf</artifactId> <version>[LATEST_VERSION]</version> </dependency> <!-- SLF4J for logging (optional but recommended) --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>[LATEST_VERSION]</version> </dependency> </dependencies> <dependencies> <!-- IronPDF Library --> <dependency> <groupId>com.ironsoftware</groupId> <artifactId>ironpdf</artifactId> <version>[LATEST_VERSION]</version> </dependency> <!-- SLF4J for logging (optional but recommended) --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>[LATEST_VERSION]</version> </dependency> </dependencies> XML 第一個工件引用最新版本的 IronPDF 庫。 第二個工件引用一個 SLF4J 實現。 此依賴項是必需的,以啟用 IronPDF 的渲染引擎在執行期間生成日志消息。 Software engineers can substitute this dependency for other logging providers (such as Logback and Log4J); 或者如果不需要或不希望日誌功能,可以完全省略。 在 Java 項目的根目錄中的終端中運行mvn install命令以下載前面提到的庫。 選擇 2:手動安裝 IronPDF JAR Developers who prefer not to use Maven or any other dependency management system will need to download the IronPDF library JAR file (and the optional SLF4J implementation) and manually add it to their project's class path. 直接從 IronPDF JAR 下載(或從 Maven 存儲庫)下載 IronPDF JAR 文件。 2. 轉換 HTML 到 PDF 本節展示了 IronPDF 的旗艦 HTML 到 PDF 渲染能力。 PdfDocument類是 IronPDF 所有 PDF 文檔渲染和操控功能的入口。 該類包括一組強大的方法,用於支持以下三種用例的 HTML 到 PDF 文檔轉換:來自 HTML 字串/標記的轉換、來自 HTML 文件的轉換以及來自 URL 的轉換。 本節將簡要介紹這些用例,每個用例都有鏈接到更多內容以獲取額外的信息。 2.1 匯入 IronPDF 包 所有 IronPDF 的轉換和處理組件都包含在 com.ironsoftware.ironpdf 包中。 在 Java 源文件的頂部包含以下導入語句(使用 IronPDF 的地方),以使這些組件可被應用程序的源代碼訪問。 // Import statement for IronPDF for Java import com.ironsoftware.ironpdf.*; // Import statement for IronPDF for Java import com.ironsoftware.ironpdf.*; JAVA 2.2. 設置授權金鑰(可選) IronPDF for Java 是免費使用的。 不過,對於免費用戶,它會將 PDF 文檔上帶有拼貼背景的水印(如下圖所示)。 要使用 IronPDF 生成無水印的 PDF,需要使用有效的許可證密鑰。 以下代碼行使用許可證密鑰配置庫。 // Apply your license key License.setLicenseKey("YOUR-LICENSE-KEY"); // Apply your license key License.setLicenseKey("YOUR-LICENSE-KEY"); JAVA 在生成 PDF 文件或自定義文件內容之前應設置許可證密鑰。 我們建議在所有其他代碼行之前調用 setLicenseKey 方法。 Purchase a license key from the IronPDF licensing page, or contact us to 獲取免費試用許可證密鑰。 2.3 設置日誌文件位置(可選) 默認情況下(假設安裝了 SLF4J 提供程序),IronPDF 會將日誌消息生成到一個名為_IronPdfEngine.log_的文本文件,該文件位於 Java 應用程序的根目錄中。 要為日志文件指定不同的名稱和位置,請使用Settings.setLogPath方法: // Set a log path Settings.setLogPath(Paths.get("IronPdfEngine.log")); // Set a log path Settings.setLogPath(Paths.get("IronPdfEngine.log")); JAVA [{i:(Settings.setLogPath 必須在使用任何 PDF 轉換和操作方法之前調用。)}] 2.4. 從 HTML 字串創建 PDF PdfDocument.renderHtmlAsPdf將一個 HTML 內容字符串轉換為 PDF 文檔。 以下代碼示例使用單個標題元素生成一個新文件。 // Convert HTML string to PDF document PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF!</h1>"); // Save the PDF document pdf.saveAs("htmlstring_to_pdf.pdf"); // Convert HTML string to PDF document PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF!</h1>"); // Save the PDF document pdf.saveAs("htmlstring_to_pdf.pdf"); JAVA renderHtmlAsPdf以現代標準兼容的瀏覽器可支持的同樣方式處理所有 HTML、CSS 和 JavaScript 內容。 這有助於軟件工程師創建與 Web 瀏覽器中顯示完全相同的 PDF 文檔。 renderHtmlAsPdf 方法可以從計算機或網絡驅動器上的文件夾中獲取圖像、樣式表和腳本。下一個示例生成引用位於 assets 文件夾中的 CSS 文件和圖像的 HTML 的 PDF 文檔: // HTML string with external assets String html = "<html><head><title>Hello world!</title><link rel='stylesheet' href='assets/style.css'></head><body><h1>Hello from IronPDF!</h1><a href='https://ironpdf.com/java/'><img src='assets/logo.png' /></a></body></html>"; // Convert HTML to PDF PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html); // Save the PDF document pdf.saveAs("output.pdf"); // HTML string with external assets String html = "<html><head><title>Hello world!</title><link rel='stylesheet' href='assets/style.css'></head><body><h1>Hello from IronPDF!</h1><a href='https://ironpdf.com/java/'><img src='assets/logo.png' /></a></body></html>"; // Convert HTML to PDF PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html); // Save the PDF document pdf.saveAs("output.pdf"); JAVA 第二個(可選的)參數renderHtmlAsPdf允許開發人員指定一個基本路徑,從中參考網頁資產。 這個路徑可以是本地文件系統或甚至是 URL 路徑。 Learn more about the renderHtmlAsPdf method from this code example on using HTML to create a PDF, or read about it in the API Reference page for PdfDocument class. 2.5. 從 URL 創建 PDF 開發人員可以使用 IronPDF 的PdfDocument.renderUrlAsPdf方法將在線網頁轉換為 PDF 文檔。 下一個示例將維基百科文章渲染為 PDF 內容。 // Convert a URL to PDF PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF"); // Save the PDF document pdf.saveAs("url_to_pdf.pdf"); // Convert a URL to PDF PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF"); // Save the PDF document pdf.saveAs("url_to_pdf.pdf"); JAVA 了解有關從轉換 URL 為 PDF 的代碼示例中了解更多有關將網頁轉換為 PDF 內容的信息。 2.6. 從 HTML 文件創建 PDF IronPDF 還可以將存儲在本地檔案系統上的 HTML 文檔直接渲染到其等效的 PDF 格式。 下一個代碼示例使用此發票作為現實示範,展示 IronPDF 如何高效地轉換 HTML 文件。 為了方便,這裡重現了發票的 HTML 標記: <html> <head> <meta charset="utf-8"> <title>Invoice</title> <link rel="stylesheet" href="style.css"> <link rel="license" href="https://www.opensource.org/licenses/mit-license/"> <script src="script.js"></script> </head> <body> <header> <h1>Invoice</h1> <address contenteditable> <p>Jonathan Neal</p> <p>101 E. Chapman Ave<br>Orange, CA 92866</p> <p>(800) 555-1234</p> </address> <span><img alt="" src="http://www.jonathantneal.com/examples/invoice/logo.png"><input type="file" accept="image/*"></span> </header> <article> <h1>Recipient</h1> <address contenteditable> <p>Some Company<br>c/o Some Guy</p> </address> <table class="meta"> <tr> <th><span contenteditable>Invoice #</span></th> <td><span contenteditable>101138</span></td> </tr> <tr> <th><span contenteditable>Date</span></th> <td><span contenteditable>January 1, 2012</span></td> </tr> <tr> <th><span contenteditable>Amount Due</span></th> <td><span id="prefix" contenteditable>$</span><span>600.00</span></td> </tr> </table> <table class="inventory"> <thead> <tr> <th><span contenteditable>Item</span></th> <th><span contenteditable>Description</span></th> <th><span contenteditable>Rate</span></th> <th><span contenteditable>Quantity</span></th> <th><span contenteditable>Price</span></th> </tr> </thead> <tbody> <tr> <td><a class="cut">-</a><span contenteditable>Front End Consultation</span></td> <td><span contenteditable>Experience Review</span></td> <td><span data-prefix>$</span><span contenteditable>150.00</span></td> <td><span contenteditable>4</span></td> <td><span data-prefix>$</span><span>600.00</span></td> </tr> </tbody> </table> <a class="add">+</a> <table class="balance"> <tr> <th><span contenteditable>Total</span></th> <td><span data-prefix>$</span><span>600.00</span></td> </tr> <tr> <th><span contenteditable>Amount Paid</span></th> <td><span data-prefix>$</span><span contenteditable>0.00</span></td> </tr> <tr> <th><span contenteditable>Balance Due</span></th> <td><span data-prefix>$</span><span>600.00</span></td> </tr> </table> </article> <aside> <h1><span contenteditable>Additional Notes</span></h1> <div contenteditable> <p>A finance charge of 1.5% will be made on unpaid balances after 30 days.</p> </div> </aside> </body> </html> <html> <head> <meta charset="utf-8"> <title>Invoice</title> <link rel="stylesheet" href="style.css"> <link rel="license" href="https://www.opensource.org/licenses/mit-license/"> <script src="script.js"></script> </head> <body> <header> <h1>Invoice</h1> <address contenteditable> <p>Jonathan Neal</p> <p>101 E. Chapman Ave<br>Orange, CA 92866</p> <p>(800) 555-1234</p> </address> <span><img alt="" src="http://www.jonathantneal.com/examples/invoice/logo.png"><input type="file" accept="image/*"></span> </header> <article> <h1>Recipient</h1> <address contenteditable> <p>Some Company<br>c/o Some Guy</p> </address> <table class="meta"> <tr> <th><span contenteditable>Invoice #</span></th> <td><span contenteditable>101138</span></td> </tr> <tr> <th><span contenteditable>Date</span></th> <td><span contenteditable>January 1, 2012</span></td> </tr> <tr> <th><span contenteditable>Amount Due</span></th> <td><span id="prefix" contenteditable>$</span><span>600.00</span></td> </tr> </table> <table class="inventory"> <thead> <tr> <th><span contenteditable>Item</span></th> <th><span contenteditable>Description</span></th> <th><span contenteditable>Rate</span></th> <th><span contenteditable>Quantity</span></th> <th><span contenteditable>Price</span></th> </tr> </thead> <tbody> <tr> <td><a class="cut">-</a><span contenteditable>Front End Consultation</span></td> <td><span contenteditable>Experience Review</span></td> <td><span data-prefix>$</span><span contenteditable>150.00</span></td> <td><span contenteditable>4</span></td> <td><span data-prefix>$</span><span>600.00</span></td> </tr> </tbody> </table> <a class="add">+</a> <table class="balance"> <tr> <th><span contenteditable>Total</span></th> <td><span data-prefix>$</span><span>600.00</span></td> </tr> <tr> <th><span contenteditable>Amount Paid</span></th> <td><span data-prefix>$</span><span contenteditable>0.00</span></td> </tr> <tr> <th><span contenteditable>Balance Due</span></th> <td><span data-prefix>$</span><span>600.00</span></td> </tr> </table> </article> <aside> <h1><span contenteditable>Additional Notes</span></h1> <div contenteditable> <p>A finance charge of 1.5% will be made on unpaid balances after 30 days.</p> </div> </aside> </body> </html> HTML 假設 HTML 文件已保存到名為“invoices”的文件夾中,與其 CSS 文件和 JavaScript 文件在一起。我們可以使用 IronPDF 將 HTML 文件轉換如下: // Convert an HTML file to PDF PdfDocument pdf = PdfDocument.renderHtmlFileAsPdf("C:/invoices/TestInvoice1.html"); // Save the PDF document pdf.saveAs("htmlfile_to_pdf.pdf"); // Convert an HTML file to PDF PdfDocument pdf = PdfDocument.renderHtmlFileAsPdf("C:/invoices/TestInvoice1.html"); // Save the PDF document pdf.saveAs("htmlfile_to_pdf.pdf"); JAVA 正如 HTML 字符串到 PDF 轉換示例中一樣,IronPDF 能夠正確將 HTML 文檔中的任何相對 URL 解析為它們在文件系統上的正確路徑。 因此,該示例生成的 PDF 文件能夠完美捕捉到通常對網頁產生影響的任何參考樣式表和腳本帶來的視覺影響。 3. 進一步閱讀 我們只揭示了 IronPDF HTML 到 PDF 渲染能力的冰山一角。 進一步了解如何使用 HTML 到 PDF 轉換器進行 Java 開發,使用我們代碼示例部分中的精選代碼樣本。 閱讀此有關 PDF 生成設置的代碼示例以了解如何在轉換過程中自定義 PDF 文檔的外觀。 Generate PDF files with custom headers and footers, margin sizes, page dimensions, watermarks, and much more. Extract PDF content (text extraction from PDFs and image extraction from PDFs) from documents, optimize file sizes with PDF compression, and print PDFs programmatically with IronPrint capabilities. 在 IronPDF Java API 參考頁上研究 PdfDocument 類,獲得對呈現的 HTML 到 PDF 的更大控制。 常見問題解答 如何在Java中將HTML內容轉換為PDF? 您可以使用 IronPDF 的PdfDocument.renderHtmlAsPdf方法將 HTML 內容轉換為 PDF 文件。此方法可確保保留 HTML 的格式。 是否可以用 Java 將網頁 URL 直接轉換為 PDF? 是的,您可以使用 IronPDF 的PdfDocument.renderUrlAsPdf方法將任何線上網頁直接轉換為 PDF 文件。 如何使用Java將本機HTML檔案轉換為PDF? 使用 IronPDF,您可以使用PdfDocument.renderHtmlFileAsPdf方法將儲存在本機系統中的 HTML 檔案渲染為 PDF 文件。 我能否去除Java PDF庫產生的PDF檔案中的浮水印? 若要從使用 IronPDF 產生的 PDF 中移除浮水印,您必須在建立 PDF 之前使用License.setLicenseKey方法設定有效的許可證金鑰。 如何在將 HTML 轉換為 PDF 時包含 CSS 等外部資源? IronPDF 支援在將 HTML 轉換為 PDF 時包含外部 CSS 和其他資源。請確保在 HTML 內容中正確引用這些資源的路徑。 如何使用 Maven 安裝 IronPDF for Java? 若要使用 Maven 在 Java 專案中安裝 IronPDF,請將 IronPDF 依賴項新增至專案的pom.xml檔案中,然後在專案的根目錄中執行mvn install 。 Java 中是否有記錄 PDF 產生過程的選項? 是的,IronPDF 支援透過 SLF4J 進行日誌記錄。如果您已安裝 SLF4J 提供程序,則可以使用Settings.setLogPath方法設定日誌檔案位置。 我能否在 Java 中自訂由 HTML 產生的 PDF 的外觀? 是的,IronPDF 允許您自訂 PDF 產生設置,包括頁首、頁尾和邊距。您可以透過使用庫中提供的各種自訂選項來實現這些設定。 哪裡可以找到更多關於在Java中使用IronPDF的範例? 您可以在 IronPDF 網站的「程式碼範例」部分和「Java API 參考」頁面找到更多關於使用 IronPDF for Java 的範例和文件。 IronPDF 是否完全相容於 .NET 10,能夠實現 HTML 到 PDF 的轉換? 是的。 IronPDF 完全相容於 .NET 10,無需特殊配置即可開箱即用。您可以在 .NET 10 中使用其 HTML 轉 PDF 方法(例如ChromePdfRenderer.RenderHtmlAsPdf ),並利用框架的改進,例如更高的效能和更新的 API。 Darrius Serrant 立即與工程團隊聊天 全棧軟件工程師 (WebOps) Darrius Serrant 擁有邁阿密大學計算機科學學士學位,目前任職於 Iron Software 的全栈 WebOps 市場營銷工程師。從小就迷上編碼,他認為計算既神秘又可接近,是創意和解決問題的完美媒介。在 Iron Software,Darrius 喜歡創造新事物,並簡化複雜概念以便於理解。作為我們的駐場開發者之一,他也自願教學生,分享他的專業知識給下一代。對 Darrius 來說,工作令人滿意因為它被重視且有實際影響。 準備好開始了嗎? 版本: 2025.11 剛剛發布 免費 Maven 下載 查看許可證