如何在 Java 中創建 PDF 文件

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

使用 Java 以程式方式創建 PDF,允許開發人員在其應用程式中自動化 PDF 文件的創建。這在各種情況下都非常有用,如生成發票、報告或其他類型的按需新 PDF 文件。

本操作指南介紹了在 Java 應用程式中使用 IronPDF 創建 PDF 文件的方法。

IronPDF Java PDF Library

IronPDF 是一個用於從 HTML 創建 PDF 文件的 Java 庫。它設計簡單易用,提供了創建和自訂 PDF 的功能,包括:

  1. 添加文字、圖片和其他類型內容的能力
  2. 選擇字體和顏色,以及控制文件佈局和格式的能力

IronPDF 建立在 .NET Framework 之上,這使得它可以在 .NET 和 Java 應用程序中使用。這使得它成為在各種環境中創建 PDF 的多功能工具。

除了其核心的 PDF 生成功能外,IronPDF 還支持其他 PDF 相關的任務,包括在不同文件格式之間的轉換,從 PDF 中提取文字和數據,和使用密碼加密來保護 PDF。

在 Java 應用程式中創建 PDF 文件的步驟

先決條件

要在 Maven 項目中使用 IronPDF 創建 PDF,請確保電腦安裝了以下先決條件軟件:

  1. Java Development Kit (JDK):** JDK 是編譯和運行 Java 應用程序所需的。請從以下位置下載 JDK 甲骨文網站.
  2. Maven: Maven 是從中央倉庫下載項目庫所需的工具。從以下鏈接下載 Maven Apache Maven 網站.

  3. IronPDF Library: IronPDF 庫可以作為依賴項添加到 Maven 專案中。將其 Maven 依賴項工件包括在內 (以及可選的 slf4j 依賴項) 在 Maven 專案的 pom.xml 檔案中,如下所示:
<dependency>
   <groupId>com.ironsoftware</groupId>
   <artifactId>com.ironsoftware</artifactId>
   <version>2024.9.1</version>
</dependency>

編寫代碼前的重要步驟

首先,在將編寫代碼的Java源文件頂部添加以下語句,以在專案範圍內導入所需的IronPDF庫類。

import com.ironsoftware.ironpdf.*;
JAVA

接下來,在 main 方法中調用 setLicenseKey 方法來配置有效的 IronPDF 授權金鑰 (在任何其他代碼行之前).

License.setLicenseKey("Your license key");
JAVA

注意需要許可鍵才能生成無浮水印的 PDF。 購買 授權金鑰或 獲取免費試用 授權密鑰。否則,請繼續進行下一步 (將以下內容翻譯為中文(繁體):

IronPDF 是一個強大的 PDF 工具,允許用戶輕鬆地生成、操作和讀取 PDF 文件。 IronPDF 支持多種語言和框架,包括 .NET、Java 和 Python。使用簡單的 API,用戶可以將 HTML 文件轉換為 PDF,並且在生成過程中添加頁眉、頁腳和水印。 IronPDF 提供高效的性能和豐富的功能,是開發人員的理想選擇。

IronOCR 是一個先進的光學字符識別(OCR)庫,用於從圖像和 PDF 文件中提取文本。這個庫支持超過125種語言,使開發人員能夠在任何應用程序中輕鬆地實現 OCR 功能。 IronOCR 的性能優異,能夠準確地識別文本並導出為各種格式。

IronXL 是一個靈活的程式庫,用於處理 Excel 文件。開發人員可以使用 IronXL 來創建、閱讀和修改 Excel 文件,支持所有常見的 Excel 格式,如 .xlsx 和 .csv。這個庫提供簡單易用的 API,使工作表操作變得更加便捷。

IronBarcode 是一個功能強大的條碼生成和掃描工具。用戶可以使用 IronBarcode 生成 1D 和 2D 條碼,並從圖像和 PDF 文件中掃描條碼。這個工具支持多種條碼類型,包括 QR 碼、EAN 和 Code 128,為開發人員提供靈活的解決方案。

IronQR 是一個高效的 QR 碼生成和掃描工具,允許用戶快速生成和識別 QR 碼。這個工具支持多種樣式和格式,並且可以輕鬆地集成到任何應用程序中。

IronZIP 是一個強大的壓縮和解壓縮程式庫,支持多種壓縮格式,如 .zip 和 .tar。用戶可以使用 IronZIP 來高效地壓縮和解壓縮文件,並且能夠處理大文件和批量操作。

IronWord 是一個專業的程式庫,用於生成和處理 Word 文件。開發人員可以使用 IronWord 來創建、閱讀和編輯 .docx 文件,並且支持豐富的格式選項和功能。

IronPrint 是一個先進的打印工具,允許用戶從應用程序中直接打印各種文件格式,包括 PDF 和 Word 文件。這個工具提供高效的性能和靈活的選項,使打印操作變得更加簡便。

IronWebscraper 是一個強大的網頁爬蟲工具,允許開發人員輕鬆地從網頁中提取數據。這個工具提供簡單的 API 和豐富的功能,支持多種網頁和數據格式,使數據抓取工作變得更加高效和便捷。) 免費生成具有浮水印的新 PDF 文件。*

透過 HTML 字串在 Java 中建立 PDF 檔案

使用 `renderHtmlAsPdf()將 HTML 字串轉換為新 PDF 檔案的方法。

renderHtmlAsPdf 方法的參數中,傳入一個 HTML 標記字串。IronPDF 會將 HTML 內容轉換為新的 PdfDocument 實例。

String htmlString = "<h1>Hello World!</h1><p>This is an example HTML string.</p>";
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(htmlString);
JAVA

之後,使用 saveAs 方法將 PDF 保存到本地系統的路徑:

pdf.saveAs(Paths.get("html.pdf"));
JAVA

上面的代碼行會創建一個名為 "html.pdf" 的文件,其中包含 HTML 字串的內容。

從 HTML 頁面在 Java 中創建 PDF 文件

使用下列範例從本地儲存的 HTML 文件中創建一個 PDF 文件:

PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("example.html");
// Save the PdfDocument to a file
myPdf.saveAs(Paths.get("html_file_saved.pdf"));
JAVA

如上所示,renderHtmlFileAsPdf 方法可將 HTML 檔案生成 PDF 檔案。該方法接受一個字串。 (或路徑) 包含文件系統中HTML文件的路徑。

IronPDF在HTML文件中渲染HTML元素,以及影響它們的任何CSS和JavaScript內容,與網頁瀏覽器的運作方式相同。

接下來,調用 saveAs 方法並指定目標文件路徑,以將PDF文件保存到特定位置,與前面的例子相同。

從 URL 創建 PDF 文件在 Java

renderUrlAsPdf 方法從 URL 參照的網頁創建 PDF 文件。將網頁的 URL 作為參數傳遞給此方法,如下所示:

PdfDocument urlToPdf = PdfDocument.renderUrlAsPdf("https://ironpdf.com");
// Save the PdfDocument to a file
urlToPdf.saveAs(Paths.get("urlToPdf.pdf"));
JAVA

更多關於將網頁轉換為PDF資訊,請參閱 將 URL 轉換為 PDF 範例程式碼 頁面。

格式化 PDF 文件

使用 ChromePdfRenderOptions 類別來指定新 PDF 文件的所需格式。可配置的設置包括頁面方向、頁面大小和邊距大小等。將 ChromePdfRenderOptions 類別的實例作為第二個參數傳遞給 renderUrlAsPdf 方法,以生成具有所需設置的 PDF 文件。請參閱此其餘的部分。 範例程式碼 瞭解有關如何使用 ChromePdfRenderOptions 類別的更多信息。

保護 PDF 文件的密碼

IronPDF 使用 SecurityOptions 類來生成受密碼保護的 PDF 文件。首先,創建一個 SecurityOptions 的實例,然後使用 setUserPassword 方法設置密碼。

SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setUserPassword("shareable");
JAVA

安全設定透過 SecurityManager 套用到 PDF。以下的程式碼片段將這些設定應用到我們在 URL 到 PDF 範例中建立的 PDF 文件:

SecurityManager securityManager =  urlToPdf.getSecurity();
securityManager.setSecurityOptions(securityOptions);
urlToPdf.saveAs("protected.pdf");
JAVA

PDF文件現在受到密碼保護。打開PDF文件將會彈出密碼提示。

Java 建立 PDF - 圖 1

在輸入正確的密碼後,PDF 檔案將會如預期般開啟。

Java 創建 PDF - 圖 2

了解更多關於附加安全性和元數據設定的信息 這裡.

完整原始碼

這個教程的完整原始檔如下:

//Import statement for IronPDF Java  
import com.ironsoftware.ironpdf.*;
import java.io.IOException;  
import java.nio.file.Paths; 

public class App 
{
    public static void main( String [] args ) throws IOException, PrinterException
    {
     // Apply your license key
        License.setLicenseKey("Your License Key");     
        String htmlString = "<h1>Hello World!</h1><p>This is an example HTML string.</p>";
        PdfDocument pdf = PdfDocument.renderHtmlAsPdf(htmlString);
        pdf.saveAs(Paths.get("html.pdf"));
        PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("example.pdf");
        myPdf.saveAs(Paths.get("html_file_saved.pdf"));
        PdfDocument urlToPdf = PdfDocument.renderUrlAsPdf("https://ironpdf.com");
        // Save the PdfDocument to a file
        urlToPdf.saveAs(Paths.get("urlToPdf.pdf"));

        // Password-protect the URLToPdf File.
        SecurityOptions securityOptions = new SecurityOptions();
        securityOptions.setUserPassword("shareable");
        SecurityManager securityManager =  urlToPdf.getSecurity();
        securityManager.setSecurityOptions(securityOptions);       
        urlToPdf.saveAs(Paths.get("protected.pdf"));
    }
}
JAVA

IronPDF 渲染所有圖像和文字而不會丟失任何格式。按鈕可以點擊,PDF 文件中的文本框可以編輯。

摘要

在這份操作指南中,我們探討了如何使用IronPDF以Java來創建PDF。IronPDF是一個強大的庫,允許開發者輕鬆地在Java中生成和操作PDF文件。

它還提供了一個簡單且直觀的API,使得從HTML文件、XML文件或其他來源創建PDF變得容易。無論您需要生成報告、發票或任何其他類型的文檔,IronPDF都可以幫助您快速且輕鬆地完成工作。

IronPDF不是一個開源的Java庫。 它有一個 商業授權 從 $749 開始。您可以獲得 免費試用 在生產環境中測試它。下載 該軟體產品。