如何使用 IronPDF for JAVA 將 HTML 轉換為 PDF

Java 中的 HTML 轉 PDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

本教學指導Java開發人員如何使用IronPDF庫將HTML內容轉換為像素級精確的PDF(便攜式文件格式)文件。

IronPDF 是一個功能齊全的 PDF 轉換器和 PDF 處理庫。 IronPDF 同時支援.NETJava程式語言。 本教學涵蓋函式庫在 Java 應用程式中轉換 HTML 內容 (檔案、標記等) 的用途。 .NET 應用程式中將 HTML 轉換為 PDF 的教學課程可在HTML 轉 PDF .NET 教學課程中找到。


如何在Java中將HTML轉換為PDF

如何在Java中將HTML轉換為PDF

1.在 Maven 配置的 Java 專案中將 IronPDF 加入為依賴項目 2.使用 renderHtmlAsPdf 方法將 HTML 字串轉換為 PDF 文件 3.用 Java 從網站 URL 產生 PDF 檔案 4.使用 renderHtmlFileAsPdf 方法將 HTML 檔案轉換為 PDF 檔案

  1. 將產生的 PDF 文件另存為新文件

開始

!{--01001100010010010100001001010010010000010101001001011001010111110101001101010100010001010101010 10100010111110101010001010010010010010100000101001100010111110100001001001100010011111010000100100110001001111010101


1. 安裝 IronPDF Java 版 PDF 函式庫

有兩種方法可將 IronPDF Library 納入 Java 專案中:

1.在 Maven 配置的 Java 專案中將 IronPDF 加入為依賴項目

  1. 下載 IronPDF JAR 檔案並手動將其新增至專案類路徑。

以下部分將簡要介紹兩種安裝方法。

方案一:將 IronPDF 安裝為 Maven 依賴項

若要使用 Maven 在 Java 專案中安裝 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 的渲染引擎能在執行過程中產生日誌訊息,此依賴關係是必需的。 軟體工程師可以將此依賴取代其他日誌提供者(例如 Logback 和 Log4J); 或者如果他們不需要或不希望記錄日誌,則可以完全省略。

在 Java 專案的根目錄的終端執行 mvn install 指令,下載之前提到的函式庫。

選項二:手動安裝 IronPDF JAR 文件

不喜歡使用 Maven 或任何其他相依性管理系統的開發人員需要下載 IronPDF 函式庫 JAR 檔案(以及可選的 SLF4J 實作),並將其手動新增至專案的類別路徑。

直接從 IronPDF JAR 下載 (或從 Maven Repository) 下載 IronPDF JAR 檔案。


2. 將 HTML 轉換為 PDF

本節展示 IronPDF 旗艦產品 HTML-to-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方法。

從 IronPDF 授權頁面購買授權金鑰,或聯絡我們取得免費試用授權金鑰。

2.3 設定日誌檔案位置(可選)

根據預設(假設已安裝 SLF4J 提供者),IronPDF 會將日誌訊息產生到一個位於 Java 應用程式根目錄中、名為 IronPdfEngine.log 的文字檔中。

若要為日誌檔案指定不同的名稱和位置,請使用Settings.setLogPath方法:

// Set a log path
Settings.setLogPath(Paths.get("IronPdfEngine.log"));
// Set a log path
Settings.setLogPath(Paths.get("IronPdfEngine.log"));
JAVA

請注意 使用任何 PDF 轉換和處理方法之前,必須呼叫Settings.setLogPath

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 產生 PDF 文檔,該文檔引用了assets資料夾中的 CSS 文件和圖像:

// 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的第二個(可選)參數可讓開發人員指定引用 Web 資源的基本路徑。 該路徑可以是本機檔案系統上的目錄,甚至是 URL 路徑。

從這個使用 HTML 來建立 PDF 的程式碼範例中,您可以瞭解更多關於 renderHtmlAsPdf 方法的資訊,或是在 PdfDocument 類的 API 參考頁面中閱讀有關它的資訊,以獲得更大的 HTML 渲染成 PDF 的控制權。

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>
    ...
</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>
    ...
</body>
</html>
HTML

假設 HTML 檔案及其 CSS 檔案和 JavaScript 檔案已儲存到名為"invoices"的資料夾中。我們可以使用 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 的渲染能力只是略知一二。

透過我們程式碼範例部分中精選的程式碼範例,進一步了解如何在 Java 開發中使用 HTML 轉 PDF 轉換器。

  1. 閱讀此 PDF 產生設定程式碼範例,以了解如何在轉換過程中自訂 PDF 文件的外觀。
  2. 產生具有自訂頁首和頁尾邊距大小頁面尺寸浮水印等的 PDF 檔案。
  3. 從文件中提取 PDF 內容(從 PDF 中提取文字從 PDF 中提取圖像),透過 PDF 壓縮優化文件大小,並使用 IronPrint 功能以程式設計方式列印 PDF

學習 IronPDF Java API Reference 頁面中的 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 的步驟是什麼?

要在 Java 專案中使用 Maven 安裝 IronPDF,請將 IronPDF 依賴項添加到專案的 pom.xml 檔中,然後在專案的根目錄中執行 mvn install

在 Java 中是否有選項記錄 PDF 生成過程?

是的,IronPDF 支持通過 SLF4J 記錄。如果您安裝了 SLF4J 提供程序,您可以使用 Settings.setLogPath 方法設置日誌檔位置。

我能自定義由 HTML 生成的 PDF 外觀嗎?

是的,IronPDF 允許您自定義 PDF 生成設置,包括頁眉、頁腳和邊距。您可以使用庫中提供的各種自訂選項來實現這一點。

我在哪裡可以找到更多使用 IronPDF 在 Java 中的範例?

您可以在 IronPDF 網站的 Code Examples 部分和 Java API Reference 頁面找到更多使用 IronPDF for Java 的範例和文檔。

IronPDF 是否完全相容於 .NET 10 的 HTML 至 PDF 轉換?

是的,IronPDF 與 .NET 10 完全相容,開箱即可使用,無需特殊配置。您可以在 .NET Framework 10 中使用其 HTML-to-PDF 方法(例如 ChromePdfRenderer.RenderHtmlAsPdf ),並利用框架改進的優勢,例如增強的性能和更新的 API。

Darrius Serrant
全棧軟件工程師 (WebOps)

Darrius Serrant 擁有邁阿密大學計算機科學學士學位,目前任職於 Iron Software 的全栈 WebOps 市場營銷工程師。從小就迷上編碼,他認為計算既神秘又可接近,是創意和解決問題的完美媒介。

在 Iron Software,Darrius 喜歡創造新事物,並簡化複雜概念以便於理解。作為我們的駐場開發者之一,他也自願教學生,分享他的專業知識給下一代。

對 Darrius 來說,工作令人滿意因為它被重視且有實際影響。

準備好開始了嗎?
版本: 2025.12 剛發表