跳過到頁腳內容
使用 IRONPDF FOR JAVA

Java PDF 印章器(初學者教程)

IronPDF - Java PDF Library

IronPDF 是一個 Java PDF 程式庫,用於生成、讀取和編輯 PDF 文件。 它允許用戶輕鬆而準確地處理 PDF 文件。 IronPDF for Java 建立在 IronPDF for .NET 的成功基礎上,並在不同平台上提供了高效能。 IronPDF for Java 使用 IronPdfEngine,其速度快且針對性能進行了優化。

IronPDF 幫助 從 PDF 中提取文本和圖像及其他物件。 它幫助 從 HTML 字符串、URL 和圖像中創建 PDF。 它還允許進行不同文件格式之間的轉換。 您可以輕鬆添加新內容以及 向 PDF 添加數位簽名,同時將 文件元數據添加到現有的 PDF 文件中。 它特別為 Java 8+、Scala 和 Kotlin 設計,適用於任何 Windows、Linux 和雲端平台。

使用 IronPDF 在 Java 應用程式中創建 PDF 加蓋器的步驟

先決條件

要製作 PDF 加蓋器,您需要以下先決條件:

1. Java IDE

您可以使用任何支持 Java 的 IDE。有很多 Java 開發可用的 IDE。 本演示將使用 IntelliJ IDE。 您可以使用 NetBeans、Eclipse 等。

2. Maven 專案

Maven 是一個依賴管理工具,允許控制 Java 專案。 可以從 官方 Maven 網站下載 Maven for Java。 IntelliJ IDE for Java 包含 Maven 支持。

3. IronPDF

您可以通過多種方式下載和安裝 IronPDF for Java。

  • 在 Maven 專案中的 pom.xml 文件中添加 IronPDF 依賴。
<dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>LATEST_VERSION</version> 
</dependency>
<dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>LATEST_VERSION</version> 
</dependency>
XML

4. Slf4j

這個依賴也需要加蓋內容到現有的 PDF 文件上。 可以在 IntelliJ 的 Maven 依賴管理器中添加,或直接從 Maven 網站下載。將以下依賴添加到 pom.xml 文件中:

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>2.0.5</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>2.0.5</version>
</dependency>
XML

添加必要的匯入

安裝完所有先決條件後,下一步是導入必要的 IronPDF 套件以處理 PDF 文件。 在 Main.java 文件的頂部添加以下代碼:

import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.metadata.MetadataManager;
import com.ironsoftware.ironpdf.security.PdfPrintSecurity;
import com.ironsoftware.ironpdf.security.SecurityManager;
import com.ironsoftware.ironpdf.security.SecurityOptions;
import com.ironsoftware.ironpdf.stamp.*;

import java.io.IOException;
import java.nio.file.Paths;
import java.util.Date;
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.metadata.MetadataManager;
import com.ironsoftware.ironpdf.security.PdfPrintSecurity;
import com.ironsoftware.ironpdf.security.SecurityManager;
import com.ironsoftware.ironpdf.security.SecurityOptions;
import com.ironsoftware.ironpdf.stamp.*;

import java.io.IOException;
import java.nio.file.Paths;
import java.util.Date;
JAVA

授權金鑰

IronPDF 中的一些方法需要授權才能使用。 您可以購買授權或以試用授權免費試用 IronPDF。 您可以按如下所示設置金鑰:

// Set the IronPDF license key
License.setLicenseKey("YOUR-KEY");
// Set the IronPDF license key
License.setLicenseKey("YOUR-KEY");
JAVA

打開現有的 PDF 文件

要導入現有文件以加蓋新內容,使用 PdfDocument 類。 其靜態 fromFile 方法用於從特定路徑加載帶有實際文件名的文件。 代碼如下:

// Load an existing PDF document
PdfDocument pd = PdfDocument.fromFile(Paths.get("sample.pdf"));
// Load an existing PDF document
PdfDocument pd = PdfDocument.fromFile(Paths.get("sample.pdf"));
JAVA

已加載的原始文件:

Java PDF 加蓋器(初學者教程),圖 1:示範文件
示範文件

添加新的 HTML 內容

IronPDF 提供了一個加蓋包。 它提供了一堆有用的蓋章選項,如BarcodeStamperHtmlStamperImageStamperTextStamper,以及其他內容對齊功能。 要將新 HTML 內容添加到此 PDF 文件中,將使用 HtmlStamper 類。 讓我們使用上一節中的文件並添加一些內容到它。 以下代碼幫助完成這一任務:

// Create an HtmlStamper and set its content
HtmlStamper htmlStamper = new HtmlStamper();
htmlStamper.setHtml("New content added!");
// Create an HtmlStamper and set its content
HtmlStamper htmlStamper = new HtmlStamper();
htmlStamper.setHtml("New content added!");
JAVA

創建一個 HtmlStamper 物件,然後使用其 setHtml 方法附加新的 HTML 代碼。 下一步是將其應用於現有的 PDF 文件中,以創建新的 PDF 版本。

將所有互動元素添加到 PDF 文件中

使用之前創建的 PdfDocument 物件將 HTML 代碼添加到現有文件中。 它提供了 applyStamp 兩種重載,一種僅接受內容作為 Stamper 物件,另一種還同時接受頁面選擇。

// Apply the stamper to the PDF document
pd.applyStamp(htmlStamper);
// Apply the stamper to the PDF document
pd.applyStamp(htmlStamper);
JAVA

這將字符串描述添加到現有文件中。

保存 PDF 的更改

要保存文件,使用 PdfDocument 物件的 saveAs 方法。

// Save the modified PDF document
pd.saveAs("stamped.pdf");
// Save the modified PDF document
pd.saveAs("stamped.pdf");
JAVA

Java PDF 加蓋器(初學者教程),圖 2:加蓋的 PDF 文件
加蓋的 PDF 文件

HTML 字符串被添加到 PDF 文件的每一頁上,並且位於每頁的中央。

加蓋到特定頁面

您可以使用 applyStamp 方法的另一種重載將內容添加到特定頁面。

// Stamp content to a specific page
pd.applyStamp(htmlStamper, PageSelection.singlePage(1));
// Stamp content to a specific page
pd.applyStamp(htmlStamper, PageSelection.singlePage(1));
JAVA

PageSelection 類提供不同方法控制頁碼。 firstPage, lastPage, allPages, 和 pageRange 是一些可用的方法以適當地添加內容。

內容對齊

您可以在每個 Stamper 類中使用 [setVerticalAlignment](/java/object-reference/api/com/ironsoftware/ironpdf/stamp/Stamper.html#setVerticalAlignment(com.ironsoftware.ironpdf.stamp.VerticalAlignment))、setHeight 方法調整添加到現有 PDF 文件內容的位置。 下面的範例代碼將有助於將文本放置在頁面的左下方:

// Set the alignment of the stamper
htmlStamper.setHorizontalAlignment(HorizontalAlignment.LEFT);
htmlStamper.setVerticalAlignment(VerticalAlignment.BOTTOM);
// Set the alignment of the stamper
htmlStamper.setHorizontalAlignment(HorizontalAlignment.LEFT);
htmlStamper.setVerticalAlignment(VerticalAlignment.BOTTOM);
JAVA

Java PDF 加蓋器(初學者教程),圖 3:輸出 PDF 文件的加蓋對齊
加蓋對齊的輸出 PDF 文件

您可以使用 setVerticalOffset, setHorizontalOffset 方法進一步調整內容的位置。

若要獲取更多有關使用 IronPDF 處理 PDF 文件的信息,請訪問此 Java 中 HTML 到 PDF 轉換的代碼示例

將元數據、簽名和安全選項加蓋到現有文件上

IronPDF for Java 是一個多功能的程式庫,提供以元數據形式添加文件描述的功能,用戶權限,用戶密碼,添加數位簽名,並創建簽名文件以保存 PDF 文件的版本。

元數據

// Edit file metadata
MetadataManager metadata = pd.getMetadata();
metadata.setAuthor("Satoshi Nakamoto");
metadata.setKeywords("SEO, Friendly");
metadata.setModifiedDate(new Date().toString());
// Edit file metadata
MetadataManager metadata = pd.getMetadata();
metadata.setAuthor("Satoshi Nakamoto");
metadata.setKeywords("SEO, Friendly");
metadata.setModifiedDate(new Date().toString());
JAVA

安全選項

您還可以控制 PDF 文件的安全選項,以便資料免於未經授權的使用。 它提供了設置 setAllowUserPrinting 參數為真或假。 以下範例代碼將幫助設置上述所有物件屬性。

// Edit file security settings
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setAllowUserCopyPasteContent(false);
securityOptions.setAllowUserAnnotations(false);
securityOptions.setAllowUserPrinting(PdfPrintSecurity.FULL_PRINT_RIGHTS);
securityOptions.setAllowUserFormData(false);
securityOptions.setOwnerPassword("top-secret");
securityOptions.setUserPassword("sharable");
// Edit file security settings
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setAllowUserCopyPasteContent(false);
securityOptions.setAllowUserAnnotations(false);
securityOptions.setAllowUserPrinting(PdfPrintSecurity.FULL_PRINT_RIGHTS);
securityOptions.setAllowUserFormData(false);
securityOptions.setOwnerPassword("top-secret");
securityOptions.setUserPassword("sharable");
JAVA

用戶密碼

// Change or set the document encryption password
SecurityManager securityManager = pd.getSecurity();
securityManager.removePasswordsAndEncryption();
securityManager.makePdfDocumentReadOnly("secret-key");

securityManager.setSecurityOptions(securityOptions);
pd.saveAs(Paths.get("assets/secured.pdf"));
// Change or set the document encryption password
SecurityManager securityManager = pd.getSecurity();
securityManager.removePasswordsAndEncryption();
securityManager.makePdfDocumentReadOnly("secret-key");

securityManager.setSecurityOptions(securityOptions);
pd.saveAs(Paths.get("assets/secured.pdf"));
JAVA

為了在實際文件上加蓋數字簽名,您可以參考此 PDF 簽名的詳細代碼範例

總結

本文討論了如何在現有的 Java 中的 PDF 文件上加蓋內容。 有一個加蓋包,其中包含大量有用的加蓋類,可用於在原始文件的任何所需位置添加多種類型的內容到 PDF。

IronPDF 是一個多功能的程式庫,從上面的代碼範例中也可以看到。 它非常簡單,但卻是一個非常強大的 PDF 生成和操作工具。 這幫助開發人員輕鬆集成所有 PDF 功能到一個單一的 Java 應用程式中。

IronPDF 免費提供給單一開發,並提供無水印試用授權來測試其完整功能。 然而,商業使用需要取得 IronPDF 的授權

最後,IronPDF 提供一個購買 Iron Software 套件的特殊優惠,開發人員可以以兩個授權的價格購買所有五個 Iron Software 產品。

常見問題解答

如何在Java中為現有的PDF文件新增內容?

您可以使用IronPDF for Java 中的HtmlStamper類別為現有 PDF 文件新增 HTML 內容。此類別可讓您在保留原始格式的同時整合新內容。

在Java中建立PDF圖章的主要步驟是什麼?

要使用IronPDF for Java 建立 PDF 印章,您需要安裝 Java IDE,建立一個 Maven 專案進行依賴管理,並引入IronPDF庫。然後,導入必要的類,初始化許可證,打開一個現有的 PDF 文件,並使用HtmlStamper添加內容。

如何確保在新增內容時 PDF 的格式保持不變?

IronPDF for Java 在新增內容時能夠保持 PDF 的原始格式。這得益於其強大的渲染引擎,該引擎能夠在整合新元素的同時,精確地複製現有佈局。

是否可以只在PDF文件的特定頁面上新增圖章?

是的,使用IronPDF for Java,您可以結合PageSelection類別使用applyStamp方法來定位 PDF 中的特定頁面進行蓋章。

如何調整PDF文件中圖章內容的位置?

您可以使用HtmlStamper類別中的setVerticalAlignmentsetHorizontalAlignment方法來調整 PDF 中蓋章內容的位置,從而控制新內容在頁面上的顯示位置。

PDF文件有哪些安全功能?

IronPDF for Java 提供多種安全功能,包括設定使用者權限、新增密碼以及控制 PDF 文件中內容的列印、編輯和複製的存取權限。

我是否需要獲得許可才能將 PDF 庫用於商業用途?

是的,在商業環境中使用IronPDF for Java 需要商業許可。不過,我們提供免費試用許可,方便您測試庫的全部功能,且不含浮水印。

IronPDF for Java 相容於哪些平台?

IronPDF for Java 與 Java 8+、Scala、Kotlin 相容,並支援包括 Windows、Linux 和雲端環境在內的各種平台。

如何在Java中將HTML內容轉換為PDF?

您可以使用IronPDF for Java 的RenderHtmlAsPdf方法將 HTML 內容轉換為 PDF,從而將 HTML 字串或檔案準確地渲染為 PDF 文件。

在專案中使用IronPDF for Java 需要哪些條件?

若要開始使用IronPDF for Java,請確保您已安裝 Java IDE(例如 IntelliJ)、用於管理相依性的 Maven 專案以及IronPDF庫。您還需要導入相關類別並設定庫的許可證。

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

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

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

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

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me