在生產環境中測試,無水印。
在任何需要的地方都能運行。
獲得 30 天的全功能產品。
在幾分鐘內上手運行。
試用產品期間完全訪問我們的支援工程團隊
本文將使用IronPDF Library在Java中創建一個PDF蓋章工具。
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 和雲端平台。
要製作 PDF 印章器,您將需要以下先決條件:
您可以使用任何支持 Java 的 IDE。有許多可用於 Java 開發的 IDE。 此示範將使用IntelliJ IDE。 您可以使用 NetBeans、Eclipse 等。
Maven 是一個依賴管理工具,允許控制 Java 專案。 Java 的 Maven 可以從官方 Maven 網站下載。 IntelliJ IDE for Java 包含 Maven 支援。
您可以有多種方式下載和安裝IronPDF for Java。
pom.xml
檔案中添加 IronPDF 相依性。<!-- Add IronPDF Dependency Here -->
<!-- Add IronPDF Dependency Here -->
此依賴項亦需用於在現有的 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>
安裝所有必要的前置需求之後,下一步是導入需要的 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;
IronPDF中的某些方法需要許可才能使用。 您可以購買授權或通過免費試用授權來嘗試使用IronPDF。 您可以按如下方式設定金鑰:
License.setLicenseKey("YOUR-KEY");
License.setLicenseKey("YOUR-KEY");
若要匯入現有文件以標記新內容,使用PdfDocument
類別。 其靜態fromFile
方法用於從指定路徑加載具有實際文件名的文件。 代碼如下:
PdfDocument pd = PdfDocument.fromFile(Paths.get("sample.pdf"));
PdfDocument pd = PdfDocument.fromFile(Paths.get("sample.pdf"));
加載原始文件:
範例文件
IronPDF 提供一個印章套件。 它允許一系列有用的印章選項,如BarcodeStamper
、HtmlStamper
、ImageStamper
、TextStamper
及其他用於內容對齊的工具。 要將新的 HTML 內容添加到此 PDF 文件中,將使用 HtmlStamper
類。 讓我們使用上一節中的檔案並新增一些內容。 以下程式碼有助於完成此任務:
HtmlStamper htmlStamper = new HtmlStamper();
htmlStamper.setHtml("New content added!");
HtmlStamper htmlStamper = new HtmlStamper();
htmlStamper.setHtml("New content added!");
創建一個HtmlStamper
物件,然後使用其setHtml
方法附加新的HTML程式碼。 下一步是將其應用於現有的 PDF 文件,以創建新的 PDF 版本。
使用先前創建的PdfDocument
物件將HTML代碼添加到現有文件。 它提供applyStamp
有兩個重載,一個僅接受作為Stamper
對象的內容,另一個則包括頁面選擇。
pd.applyStamp(htmlStamper);
pd.applyStamp(htmlStamper);
這將把字串描述添加到現有文件中。
要保存檔案,使用 PdfDocument
物件的saveAs
方法。
pd.saveAs("stamped.pdf");
pd.saveAs("stamped.pdf");
已加蓋的 PDF 檔案
HTML 字串會添加到每個 PDF 文件的頁面中,並位於每個頁面的中間。
您可以使用 applyStamp
方法的另一個重載將內容添加到特定頁面上。
pd.applyStamp(htmlStamper, PageSelection.singlePage(1));
pd.applyStamp(htmlStamper, PageSelection.singlePage(1));
PageSelection
類別提供多種方法來控制頁碼。 firstPage
、lastPage
、allPages
和 pageRange
是一些可用來適當添加內容的方法。
您可以使用[setVerticalAlignment
](/java/object-reference/api/com/ironsoftware/ironpdf/stamp/Stamper.html#setVerticalAlignment(com.ironsoftware.ironpdf.stamp.VerticalAlignment))、[setHorizontalAlignment
](/java/object-reference/api/com/ironsoftware/ironpdf/stamp/Stamper.html#setHorizontalAlignment(com.ironsoftware.ironpdf.stamp.HorizontalAlignment))、setWidth
、setHeight
方法在每個Stamper
類中調整添加到現有PDF文件中的內容位置。 以下示例代碼將幫助您將文本放置在頁面的左下角:
htmlStamper.setHorizontalAlignment(HorizontalAlignment.LEFT);
htmlStamper.setVerticalAlignment(VerticalAlignment.BOTTOM);
htmlStamper.setHorizontalAlignment(HorizontalAlignment.LEFT);
htmlStamper.setVerticalAlignment(VerticalAlignment.BOTTOM);
具有印章對齊的輸出 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());
您還可以控制 PDF 文件的安全選項,以防止資料被未經授權使用。 它提供選項來設定[setAllowUserPrinting
](/java/object-reference/api/com/ironsoftware/ironpdf/security/SecurityOptions.html#setAllowUserPrinting(com.ironsoftware.ironpdf.security.PdfPrintSecurity))、[setAllowUserEdits
](/java/object-reference/api/com/ironsoftware/ironpdf/security/SecurityOptions.html#setAllowUserEdits(com.ironsoftware.ironpdf.security.PdfEditSecurity))、[setAllowUserCopyPasteContent
](/java/object-reference/api/com/ironsoftware/ironpdf/security/SecurityOptions.html#setAllowUserCopyPasteContent(java.lang.Boolean))、[setAllowUserAnnotations
](/java/object-reference/api/com/ironsoftware/ironpdf/security/SecurityOptions.html#setAllowUserAnnotations(java.lang.Boolean))、[setUserPassword
](/java/object-reference/api/com/ironsoftware/ironpdf/security/SecurityOptions.html#setUserPassword(java.lang.String))、[setAllowUserFormData
](/java/object-reference/api/com/ironsoftware/ironpdf/security/SecurityOptions.html#setAllowUserFormData(java.lang.Boolean))參數為 true 或 false。 以下範例程式碼將有助於設定上述提到的所有物件屬性。
// 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");
// 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"));
如需在實際文件上蓋上數位簽名,您可以查看這個PDF簽名的詳細程式碼範例。
本文討論了如何在現有的 PDF 文件中為內容加蓋印章(使用 Java)。 有一個stamp套件,包含了一系列有用的蓋章類,這些類可以用於在原始文件中的任何位置添加多種格式的內容到PDF中。
IronPDF 是一個多功能的庫,從上述代碼示例中也可以看出。 它是一個相當簡單但非常強大的 PDF 生成和操作工具。 這有助於開發人員輕鬆將所有 PDF 功能集成到單一的 Java 應用程式中。
IronPDF 對於單一開發是免費的,並提供免費試用許可證無水印以測試其完整功能。 然而,對於商業用途,應取得IronPDF授權。
最後,IronPDF 提供購買 Iron Software 套件的特別促銷,開發人員可以購買所有五個 Iron Software 產品,只需支付兩份許可證的價格。