Java PDF 印章器(初學者教程)
IronPDF - Java PDF程式庫
IronPDF是用於生成、讀取和編輯PDF文件的Java 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和雲端平台。
在Java應用程式中使用IronPDF建立PDF印章的步驟
先決條件
要製作PDF印章,您需要以下條件:
1. Java IDE
您可以使用任何支援Java的IDE。有很多可用於Java開發的IDE。 本示範將使用IntelliJ IDE。 您可以使用NetBeans、Eclipse等。
2. Maven專案
Maven是一個依賴管理器,允許控制Java專案。 可以從官方Maven網站下載Java的Maven。 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>
- 存取Maven網站並從Maven庫中為Java下載最新的IronPDF包。
- 直接從IronPDF.com的IronPDF官方下載區下載IronPDF。
- 使用IronPDF JAR文件手動安裝IronPDF到您的Java應用程式中。
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>
新增必要的導入
一旦所有先決條件安裝完畢,下一步就是導入必要的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 免費試用授權。 您可以按以下方式設置金鑰:
// Set the IronPDF license key
License.setLicenseKey("YOUR-KEY");
// Set the IronPDF license key
License.setLicenseKey("YOUR-KEY");
打開現有的PDF文件
要導入現有的文件以加蓋新內容,使用PdfDocument類。 其靜態[fromFile](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#fromFile(java.nio.file.Path)方法用於從特定路徑載入實際文件名的文件。 程式碼如下:
// 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"));
載入的原始文件:

範例文件
新增新的HTML內容
IronPDF提供了印章包。 它提供了一組有用的印章選項,如BarcodeStamper、HtmlStamper、ImageStamper、TextStamper等,用於內容對齊。 要將新的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!");
建立了一個HtmlStamper物件,然後使用其setHtml方法附加新的HTML程式碼。 下一步是將其應用於現有的PDF文件以建立新的PDF版本。
將所有互動元素新增到PDF文件
使用先前建立的PdfDocument物件將HTML程式碼新增到現有文件中。 它提供了[applyStamp](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#applyStamp(com.ironsoftware.ironpdf.stamp.Stamper),具有兩種重載,一種只接受內容作為Stamper物件,另一種還包括頁面選擇。
// Apply the stamper to the PDF document
pd.applyStamp(htmlStamper);
// Apply the stamper to the PDF document
pd.applyStamp(htmlStamper);
這將會將字串描述新增到現有文件中。
將更改儲存到PDF文件
要儲存文件,請使用PdfDocument物件。
// Save the modified PDF document
pd.saveAs("stamped.pdf");
// Save the modified PDF document
pd.saveAs("stamped.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));
PageSelection類提供不同的方法來控制頁面編號。 pageRange是一些可用於適當新增內容的方法。
對齊內容
您可以在每個@--CODE-916--@@類中使用[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);

帶有印章對齊的輸出PDF文件
您可以使用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文件的安全選項,以便資料得以保護免受未經授權的使用。 It provides options to set setAllowUserPrinting, [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) parameters to true or 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簽章程式碼範例。
摘要
本文討論了如何在Java中的現有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,您可以將applyStamp方法與PageSelection類一起使用,以在PDF中定位特定頁面進行模板設置。
如何調整PDF文件中已新增模板的內容位置?
您可以使用HtmlStamper類中的setVerticalAlignment和setHorizontalAlignment方法來調整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程式庫。您還需要匯入相關類並為程式庫設置授權。





