使用 IRONPDF FOR JAVA

如何從 Java 應用程式動態生成 PDF 文件

已更新 2024年8月25日
分享:

這個教學將說明如何在Java應用程序中動態創建PDF文件,並探索從文字、URL和HTML頁面創建PDF頁面的代碼範例。之後,將介紹如何從新文檔實例創建受密碼保護的PDF文件。 IronPDF 這個程式庫非常適合這個目的,因為它對於開發是免費的,更加安全,提供了所有功能於一個單一的程式庫,並且達到了100%的準確性,同時表現非常出色。

在繼續之前,讓我們簡要介紹一下IronPDF。

IronPDF

IronPDF 是由 Iron Software 開發的最受歡迎的 Java PDF 庫,用於創建 PDF、編輯新文件和操作現有的 PDF。它設計兼容範圍廣泛的 JVM 語言,包括 Java、Scala 和 Kotlin,並且可以在範圍廣泛的平台上運行,包括 Windows、Linux、Docker、Azure 和 AWS。IronPDF 支援流行的 IDE,例如 IntelliJ IDEA 和 Eclipse。

主要功能包括 創建 PDF 文件 從HTML、HTTP、JavaScript、CSS、XML文件和各種圖像格式。此外,IronPDF還提供了 添加頁首和頁尾, 建立表格, 數位簽章附件 密碼和安全性它支持完全多執行緒並且 更多!

現在,我們開始展示如何透過代碼範例來創建動態文件。

首先,創建一個新的Maven倉庫項目。

創建一個新的 Java 專案

為了演示目的,本教程將使用 IntelliJ IDE。您可以使用任何您選擇的 IDE。創建新的 Java 專案的步驟可能因 IDE 而異。請按照以下步驟操作:

  1. 啟動 IntelliJ IDE。
  2. 選擇 File > New > Project
  3. 輸入專案標題。
  4. 選擇位置、語言、構建系統和 JDK。
  5. 點擊 Create 按鈕。

    如何動態從 Java 應用程式生成 PDF 檔案,圖 1:建立一個專案

    建立專案

命名專案,選擇位置、語言、構建系統和JDK。選擇 建立 按鈕選項。將創建一個新專案。

現在,安裝IronPDF在此示範Java應用程式中。

安裝 IronPDF Java 庫

接下來的步驟是在 pom.xml 文件中添加依賴項以安裝 IronPDF。在 pom.xml 文件中添加以下 XML 原始碼,如下所示。

<dependency>
   <groupId>com.ironsoftware</groupId>
   <artifactId>com.ironsoftware</artifactId>
   <version>2024.9.1</version>
</dependency>

立即建置專案。應用程式將會自動安裝來自圖書館的资料库。 Maven 資料庫讓我們從將 HTML 字串轉換為 PDF 文件的簡單示例開始。

建立 PDF 文件

請參閱以下範例:

public static void main(String[] args) throws IOException, PrinterException { 
    String htmlString = "<h1>My First PDF File<h1/><p> This is sample PDF file</p>";
    //document class
    PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(htmlString);

    // Save the PdfDocument to a file
    try {
        myPdf.saveAs(Paths.get("myPDF.pdf") );
    } catch (IOException e) {
        throw new RuntimeException(e);
    }
}
JAVA

在上述函數中,HTML 內容被賦值給一個字串變數。 渲染Html為Pdf 方法接受字串作為參數並將HTML內容轉換為PDF文件實例。 儲存為 方法接受位置路径作为输入,并将PDF文件实例保存到选定的目录中。

上述代码生成的PDF如下所示。

如何從 Java 應用動態生成 PDF 檔案,圖 2:輸出

輸出

從 HTML 文件生成 PDF 文件

IronPDF 也提供了一項驚人的功能,能夠從 HTML 文件生成 PDF 文件。

示例中將使用的 HTML 文件如下所示。

如何動態從 Java 應用生成 PDF 文件,圖 3:含新段落的已渲染 HTML

新段落呈現的 HTML

以下是生成 PDF 的範例代碼片段:

PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("myFile.html");
// Save the PdfDocument to a file
try {
    myPdf.saveAs("myPDF.pdf");
} catch (IOException e) {
    throw new RuntimeException(e);
}
JAVA

renderHtmlFileAsPdf 該方法接受 HTML 檔案的路徑作為參數,並根據 HTML 檔案生成 PDF 文件。之後使用 saveAs 方法將這個 PDF 文件保存到本地硬碟。

該程式生成的 PDF 格式文件如下所示。

如何從 Java 應用程式動態生成 PDF 檔案,圖 4:PDF 輸出

PDF 輸出

下一步是使用包含 JavaScript 和 CSS 的大型 HTML 文件,並檢查其在將 HTML 轉換為 PDF 時設計的準確性和一致性。

從 HTML 文件生成 PDF 文件

以下範例的 HTML 頁面將被使用,其中包含圖像、動畫、樣式、jQuery 和 Bootstrap。

如何從 Java 應用程式動態生成 PDF 文件,圖 5:示例 HTML 頁面

範例 HTML 頁面

如何從Java應用程式動態生成PDF檔案, 圖6: 示例HTML

示範 HTML

示範 HTML 文件顯示其具有豐富的樣式並包含圖形。這個 HTML 檔案將被轉換為 PDF 文件,並對其內容和樣式的準確性進行評估。

將使用上述範例中的相同代碼行。

PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("index.html");

// Save the PdfDocument to a file
try {
    myPdf.saveAs("myPDF.pdf");
} catch (IOException e) {
    throw new RuntimeException(e);
}
JAVA

前面的例子已經包含了代碼解釋。其餘的保持不變;

這是輸出PDF文件:

如何從 Java 應用程式動態生成 PDF 文件,圖 7:HTML 轉 PDF

HTML 轉 PDF

使用 IronPDF 來創建 PDF 文件非常簡單。源文件的格式和內容都是一致的。

也可以使用 URL 來創建 PDF 文件。

將網址轉換為PDF文件

以下代碼範例將從網址生成PDF文件。

PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
// Save the PdfDocument to a file
try {
    myPdf.saveAs("myPDF.pdf");
} catch (IOException e) {
    throw new RuntimeException(e);
}
JAVA

renderUrlAsPdf 该函数接受一个 URL 作为参数并将其转换为 PDF 文件。此 PDF 文件稍后将使用 saveAs 函数保存到本地驱动器。

以下是输出的 PDF 文件:

如何動態地從Java應用程式生成PDF文件,圖8:輸出PDF

輸出 PDF

也可以添加浮水印、頁首、頁尾、數位簽名、轉換 XML 文件/JSP 頁面等功能。

下一步是生成受密碼保護的 PDF。

生成受密碼保護的 PDF 文件

以下範例程式碼示範了如何為生成的 PDF 文件添加安全性。

PdfDocument myPdf = PdfDocument.fromFile(Paths.get("myPDf.pdf"));
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setAllowUserEdits(PdfEditSecurity.NO_EDIT);
securityOptions.setAllowUserAnnotations(false);
securityOptions.setAllowUserPrinting(PdfPrintSecurity.NO_PRINT);
securityOptions.setAllowUserFormData(false);
securityOptions.setOwnerPassword("123456");
securityOptions.setUserPassword("123412");

try {
    myPdf.saveAs(Paths.get("myNewPDF.pdf"));
} catch (IOException e) {
    throw new RuntimeException(e);
}
JAVA

透過上述程式碼,PDF檔案已設為唯讀,且不允許編輯或段落對齊。文件也被限制無法列印,確保無法列印。同時也設定了一個密碼。檔案現在非常安全。透過這種方式,可以使用IronPDF定義不同的檔案權限並生成動態輸出。

摘要

本教程展示了如何生成 PDF 文件。一個 PDF 文件可以從 HTML 字串、HTML 檔案和 URL 中創建,包含從簡單到複雜的範例。還有許多有用的功能可供使用,例如添加浮水印、頁腳、頁眉、前景色、合併和拆分頁面等等。所有這些功能無法在此全部涵蓋,請訪問 官方文件 供進一步探索。

透過IronPDF,HTML轉PDF轉換變得非常簡單。只需一行代碼即可將HTML轉換為PDF。一些安全措施也已添加到PDF檔案中。它更快、更準確、更安全。每個生成的PDF都包含IronPDF的浮水印。這是因為使用了具有有限權限的免費開發版,而不是商業授權許可。購買商業授權許可後可以去除浮水印。 免費試用版 或是 a 根據需要授權.

< 上一頁
如何在 Java 中寫入 PDF 文件
下一個 >
Java PDF 轉換器(代碼範例教程)

準備開始了嗎? 版本: 2024.9 剛剛發布

免費 Maven 下載 查看許可證 >