在生产环境中测试,无水印。
随时随地满足您的需求。
获得30天的全功能产品。
几分钟内就能启动并运行。
在您的产品试用期间,全面访问我们的支持工程团队。
本文将使用IronPDF库在Java中创建一个PDF Stamper。
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
等,用于内容对齐。 要向此 PDF 文档添加新的 HTML 内容,将使用 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
是一些可用的方法,用于适当地添加内容。
您可以在每个Stamper
类中使用[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
方法调整添加至现有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签名的详细代码示例。
本文讨论了如何用 Java 在现有 PDF 文档上加盖内容戳记。 有一个stamp包,里面包含许多有用的印章类,可以用于在原始文档中的任何所需位置添加多种格式的内容到PDF。
IronPDF 是一个多功能的库,这从上述代码示例中也可以看出。 它是一个非常简单但极其强大的PDF生成和操作工具。 这有助于开发人员在一个Java应用程序中轻松集成所有PDF功能。
IronPDF 对于个人开发是免费的,并提供免费试用许可证,无水印,以测试其完整功能。 然而,商业用途应获得IronPDF的许可。
最后,IronPDF 提供了一个特别促销活动,开发者可以用购买两份许可证的价格购买五款 Iron Software 产品。