使用 IRONPDF FOR JAVA

Java 庫 PDF 生成(完整代碼範例)

已更新 2024年9月1日
分享:

這篇文章將探討IronPDF庫,這是一個用於在Java中創建PDF的優秀工具。

IronPDF:Java PDF 圖書館

IronPDF 是一個受歡迎的 Java PDF 庫 讓開發人員輕鬆建立PDF文件、PDF表單、數位簽署PDF檔案等。使用IronPDF,您可以將現有的PDF文件用作 模板以生成新的 PDF 文件將 PDF 數據存儲在數據庫中以供以後使用,將 PDF 轉換為其他格式如 HTML,甚至 合併多個 PDF 合併成一個文件。

IronPDF允許用戶 新增文字註解 來個性化他們創建的文件。此外,使用 IronPDF,您可以在您的 PDF 文件中包含安全設置,例如密碼或水印。它有助於將 PDF 功能集成到 Java 程式中。IronPDF 是一個非常多功能且強大的工具,能夠快速而安全地生成 PDF。我們來看看如何使用 IronPDF 創建 PDF 文件。

使用 IronPDF 生成 PDF 文件

IronPDF 是一個用於創建 PDF 文件的無價工具。它擁有所有您所需的功能,可以迅速將文件、網頁和圖片轉換為穩定、安全的 PDF,並且能輕鬆分享。讓我們在這個範例程式中安裝 IronPDF。

安裝 IronPDF Java PDF 函式庫

要在 Maven 專案中安裝 IronPDF Java,您可以將以下相依項目新增到專案的 pom.xml 檔案:

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

這將添加 IronPDF for Java 庫和它使用的 SLF4J 記錄器。建議使用最新版本的 IronPDF for Java。添加依賴關係後,您可以運行 mvn install 來安裝本地倉庫中的依賴關係,您的項目將可以使用 IronPDF for Java。

使用 Java 創建 PDF 文件的代碼

此代碼是用 Java 編寫的,並使用 IronPDF 庫來 將 HTML 轉換為 PDF 文件.

// Import statement for IronPDF Java  
import com.ironsoftware.ironpdf.*;

import java.io.IOException;
import java.nio.file.Paths;

public class Main {
    public static void main(String[] args) throws IOException {
        // Apply your license key
        License.setLicenseKey("YOUR-LICENSE-KEY");
        // Set a log path  
        Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
        // Render the HTML as a PDF. Stored in myPdf as type PdfDocument  
        String html = "<!DOCTYPE html>\r\n"
                + "<html>\r\n"
                + "  <head>\r\n"
                + "    <link href='https://fonts.googleapis.com/css2?family=Popin&display=swap' rel='stylesheet'>\r\n"
                + "    <style>\r\n"
                + "      /* Add CSS styles for the invoice here */\r\n"
                + "      body{\r\n"
                + "        font-family: 'Popin', cursive;\r\n"
                + "      }\r\n"
                + "      .invoice {\r\n"
                + "        width: 80%;\r\n"
                + "        margin: 0 auto;\r\n"
                + "        border: 1px solid #ccc;\r\n"
                + "        padding: 20px;\r\n"
                + "        background-color: #f5f5f5;\r\n"
                + "        color: #333;\r\n"
                + "      }\r\n"
                + "      .invoice h1 {\r\n"
                + "        text-align: center;\r\n"
                + "      }\r\n"
                + "      .invoice .invoice-info {\r\n"
                + "        display: flex;\r\n"
                + "        justify-content: space-between;\r\n"
                + "        margin-bottom: 20px;\r\n"
                + "      }\r\n"
                + "      .invoice .invoice-info div {\r\n"
                + "        width: 45%;\r\n"
                + "      }\r\n"
                + "      .invoice table {\r\n"
                + "        width: 100%;\r\n"
                + "        border-collapse: collapse;\r\n"
                + "      }\r\n"
                + "      .invoice table th, .invoice table td {\r\n"
                + "        border: 1px solid #ccc;\r\n"
                + "        padding: 10px;\r\n"
                + "      }\r\n"
                + "      .invoice table th {\r\n"
                + "        text-align: left;\r\n"
                + "        background-color: #f5f5f5;\r\n"
                + "      }\r\n"
                + "      .invoice table td {\r\n"
                + "        text-align: right;\r\n"
                + "      }\r\n"
                + "      .invoice table td.total {\r\n"
                + "        font-weight: bold;\r\n"
                + "      }\r\n"
                + "    </style>\r\n"
                + "  </head>\r\n"
                + "  <body>\r\n"
                + "    <div class=\"invoice\">\r\n"
                + "      <h1>Invoice</h1>\r\n"
                + "      <div class=\"invoice-info\">\r\n"
                + "        <div>\r\n"
                + "          <p><strong>From:</strong></p>\r\n"
                + "          <p>Your Company Name</p>\r\n"
                + "          <p>123 Main St</p>\r\n"
                + "          <p>City, State ZIP</p>\r\n"
                + "        </div>\r\n"
                + "        <div>\r\n"
                + "          <p><strong>To:</strong></p>\r\n"
                + "          <p>Customer Name</p>\r\n"
                + "          <p>456 Park Ave</p>\r\n"
                + "          <p>City, State ZIP</p>\r\n"
                + "        </div>\r\n"
                + "      </div>\r\n"
                + "      <table>\r\n"
                + "        <thead>\r\n"
                + "          <tr>\r\n"
                + "            <th>Product</th>\r\n"
                + "            <th>Quantity</th>\r\n"
                + "            <th>Price</th>\r\n"
                + "            <th>Total</th>\r\n"
                + "          </tr>\r\n"
                + "        </thead>\r\n"
                + "        <tbody>\r\n"
                + "          <tr>\r\n"
                + "            <td>Product 1</td>\r\n"
                + "            <td>1</td>\r\n"
                + "            <td>$10.00</td>\r\n"
                + "            <td>$10.00</td>\r\n"
                + "          </tr>\r\n"
                + "          <tr>\r\n"
                + "            <td>Product 2</td>\r\n"
                + "            <td>2</td>\r\n"
                + "            <td>$5.00</td>\r\n"
                + "            <td>$10.00</td>\r\n"
                + "          </tr>\r\n"
                + "          <tr>\r\n"
                + "            <td colspan=\"3\" class=\"total\">Total:</td>\r\n"
                + "            <td class=\"total\">$20.00</td>\r\n"
                + "          </tr>\r\n"
                + "        </tbody>\r\n"
                + "      </table>\r\n"
                + "    </div>\r\n"
                + "  </body>\r\n"
                + "</html>";

        PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(html);
        //Save PDF document
        myPdf.saveAs(Paths.get("C://HTMLtoPDF.pdf"));
    }
}
JAVA

第一步是使用 setLicenseKey 方法應用授權金鑰。授權金鑰是作為字串參數傳遞的;在這個例子中,應將“YOUR-LICENSE-KEY”替換為實際的授權金鑰。

下一步是使用 setLogPath 方法設置日誌路徑。這裡將保存 IronPDF 引擎的日誌文件。在這個例子中,它被設置為“C:/tmp/IronPdfEngine.log”。

主要方法已定義,並且一個 PdfDocument 物件是通过调用 渲染Html為Pdf 方法,傳入一個 HTML 字串作為參數。這將把 HTML 轉換為 PDF 並將其存儲在 myPdf 對象中。

最後一步是使用 儲存為 方法。文件位置以Paths對象的形式作為參數傳遞,在這種情況下,“HTMLtoPDF.pdf”。

在這裡,您可以看到使用IronPDF Java PDF庫創建PDF文件的上述程序的輸出結果。

Java 庫 PDF 生成(完整代碼範例),圖 1:來自 HTML 字串的輸出 PDF 檔案

從 HTML 字串生成的輸出 PDF 文件

從URL創建PDF文件

IronPDF 可以 渲染網頁 包括來自本地網路和外部伺服器的各種來源。

import com.ironsoftware.ironpdf.*;

import java.io.IOException;
import java.nio.file.Paths;

// Apply your license key
License.setLicenseKey("YOUR-LICENSE-KEY");

// Set a log path
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));

// Render the HTML as a PDF. Stored in myPdf as type PdfDocument;
PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://ironpdf.com");

// Save the PdfDocument to a file
myPdf.saveAs(Paths.get("url.pdf"));
JAVA

PdfDocument.renderUrlAsPdf 方法專門為此目的設計,接受包含要轉換的網頁 URL 的字串。該方法檢索網頁的 HTML 內容並將其轉換為 PDF 文件。IronPDF 保留所有網頁組件的外觀,同時使互動式 (連結、表單字段等。) 功能。

結果如下:

Java 庫 PDF 生成(完整程式碼範例),圖2:從 URL 輸出的 PDF 文件

從 URL 生成的 PDF 文件

總結

總結來說,IronPDF 是一個具有許多功能的寶貴 Java 庫,可用於創建和操作 PDF 文件。無論您是否需要... 數位簽署 PDF, 填寫表格,或執行其他任務,IronPDF 使其易於通過最少的編碼來完成。

有了它 免費試用 並且靈活的價格選項從$749開始,IronPDF 是為開發人員尋求在其項目中添加 PDF 功能的經濟高效解決方案。

< 上一頁
HTML2PDF Java (代碼範例教程)
下一個 >
如何在 Java 中生成 PDF

使用 Maven 安裝

版本: 2024.9.1

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

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

免費 Maven 下載 查看許可證 >