使用IRONPDF FOR JAVA

如何在Java中从模板创建PDF

Darrius Serrant
Darrius Serrant
2023年五月8日
更新 2024年九月8日
分享:

IronPDF for Java 的一大特点是其处理 PDF 模板的能力。 PDF模板是一个预先设计的PDF文件,其中包含用于动态内容的占位符。 使用IronPDF,您可以轻松地将这些占位符替换为实际数据,以生成自定义的PDF格式的新文档。

IronPDF

IronPDF 是由 Iron Software 开发和维护的 Java 库。 它提供了一个易于使用的界面,抽象化了许多PDF生成的复杂性,使开发人员能够专注于PDF的内容,而不是文件生成的细节。 IronPDF还提供一系列功能,使PDF模板、可填写表单数字签名的处理变得简单。

本教程将带您一步步完成使用IronPDF在Java中从模板创建PDF文件的步骤。

第一步是创建一个项目。

步骤 1:创建一个新的 Java 项目

以下是在 IntelliJ IDEA 中创建新 Java 项目的步骤:

  1. 打开 IntelliJ IDEA,并从欢迎屏幕或“文件”菜单中选择“创建新项目”。

  2. 从左侧菜单中选择“Java”,然后选择您想要用于项目的JDK版本。 点击“下一步”。

  3. 选择项目名称和位置,并选择项目类型。 您可以从多种不同的项目类型中选择,例如“Java应用程序”、“Java库”或“JavaFX应用程序”。 点击“下一步”。

  4. 配置项目设置。 您可以指定项目SDK、项目语言级别和其他设置。 您还可以选择创建一个模块或选择一个现有的模块。 点击“下一步”。

  5. 选择项目模板。 您可以选择创建一个空白项目、有示例代码的项目,或导入现有项目。 点击“完成”。

    如何在Java中从模板创建PDF,图1:使用IntelliJ IDEA创建新的Java项目

    使用 IntelliJ IDEA 创建新的 Java 项目

步骤 2:将 IronPDF 库添加到您的项目中

第二步是使用 XML 文件将 IronPDF 库添加到您的 Java 项目中。您可以通过将以下依赖项添加到项目的pom.xml文件中来实现:

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

步骤 3:创建PDF模板

接下来,您需要创建一个PDF模板,用于生成您的PDF文件。您可以使用任何PDF编辑器来创建PDF模板。 该模板可以包括在运行时将被动态数据替换的占位符。

假设有一个用例,向50名学生颁发若干证书。 现在为每个用户创建单独的证书是一项非常繁重的任务。 所以使用以下演示程序作为示范,使用一个模板并只更改名称。

如何在 Java 中从模板创建 PDF,图 2:证书模板图像实例

证书模板图像实例

步骤4:从模板创建PDF文档

创建 PDF 模板证书后,第一步是将其加载到 Java 应用程序中。 IronPDF PdfDocument 类用于将 PDF 模板加载到内存中。 下面是一个示例代码片段,展示了如何使用IronPDF加载PDF模板:

PdfDocument PdfDoc = PdfDocument.fromFile(Paths.get("CERTIFICATE.pdf"));
JAVA

现在,让我们编写一个代码示例,该示例将基于给定模板创建5个证书。

//throws exception if file operations are not handled correctly
public static void main(String[] args) throws IOException {

    String[] studentName = new String[]{"Georgia Wade", "Juliet Dave", "Olive Seth", "Miles Jorg", "Oscar Den"};
    for (String name : studentName) {
        PdfDocument PdfDoc = PdfDocument.fromFile(Paths.get("CERTIFICATE.pdf"));
        PdfDoc.replaceText(PageSelection.firstPage(), "Recipient Name", name);
        PdfDoc.saveAs(Paths.get("/Certificate/" + name + ".pdf"));
    }
}
JAVA

以下是输出日志:

如何在 Java 中从模板创建 PDF,图 3:输出

输出

以上代码创建了一个学生名字数组,然后使用IronPDF库将现有PDF模板中的占位符文本替换为每个学生的名字,并将带有学生名字的新PDF副本保存为文件名。

以下是代码的工作原理:

  1. studentName数组已定义并初始化为五个学生的姓名。

  2. for 循环遍历 studentName 数组中的每个名称。

  3. [PdfDocument.fromFile](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#fromFile(java.nio.file.Path) 方法将名为“CERTIFICATE.pdf”的 PDF 模板文件加载到 PdfDocument 对象中。

  4. PdfDocument.replaceText 方法用于将 PDF 模板中的文本“Recipient Name”替换为当前学生的名字。

  5. [PdfDocument.saveAs](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#saveAs(java.lang.String) 方法将修改后的 PDF 文件以学生的姓名作为文件名保存到 "/Certificate" 目录中。

  6. 循环一直持续,直到所有学生的名字都被处理完毕。

    通过这种方式,根据单个PDF模板生成多个证书,每个证书都有唯一的学生姓名。 相同的方法可用于使用任何模板生成PDF文档。

生成的PDF文件

如何在Java中从模板创建PDF,图4:PDF输出

PDF 输出

证书输出文件

以下是由此演示程序生成的证书。

如何在 Java 中从模板创建 PDF,图 5:证书输出

证书输出

步骤5:从HTML模板创建PDF模板

在这个例子中,HTML 文件将用于创建一个 PDF 模板,然后将使用该模板生成一个 PDF 文档。

这是用于示例演示的HTML文件。

如何在Java中从模板创建PDF,图6:HTML输出

HTML 输出

请参考以下代码示例从给定的HTML格式创建一个新文档。

public static void main(String[] args) throws IOException {
    Path fileName = Path.of("D:\\index.html");
    String userName = "Mike";
    String title = "Sample PDF File";
    String body = "This is the body of our template PDF";
    String htmlStr = Files.readString(fileName);
    htmlStr = htmlStr.replace("{UserName}", userName);
    htmlStr = htmlStr.replace("{Title}", title);
    htmlStr = htmlStr.replace("{message}", body);
    PdfDocument PdfDoc = PdfDocument.renderHtmlAsPdf(htmlStr);
    PdfDoc.saveAs(Paths.get("/htmlTemplate/" + userName + ".pdf"));
}
JAVA

上述代码读取一个HTML文件的内容,用动态数据替换HTML文件中的占位符,使用IronPDF库将HTML渲染为PDF文档,并将生成的PDF文档保存在指定目录中。

以下是代码功能的逐步解释:

  1. 代码首先创建一个Path对象,指向本地文件系统上的一个HTML文件。 在这种情况下,文件位于 "D:\index.html"。

  2. 声明并初始化了三个变量,并赋予了一些示例数据:userName、title 和 body。

  3. HTML 文件的内容通过Files.readString方法读取到名为htmlStr的字符串变量中。

  4. String.replace 方法用于将 HTML 文件中的三个占位符({UserName}{Title}{message})替换为相应的动态数据。

  5. PdfDocument.renderHtmlAsPdf 方法通过将修改后的 HTML 字符串作为参数传递来调用,以将 HTML 渲染为 PDF 文档。 生成的 PDF 文档存储在一个名为 PdfDocPdfDocument 对象中。

  6. 调用PdfDoc.saveAs方法将生成的PDF文档保存到本地文件系统中的名为"htmlTemplate"的目录下,文件名由userName变量构建。

    如何在 Java 中从模板创建 PDF,图 7:输出

    输出

    这样,便可以通过编程方式轻松从HTML模板创建PDF文件

    您可以通过获取免费试用或购买商业许可证来替换此水印。

结论

本文探讨了如何使用IronPDF for Java生成PDF文件。 IronPDF 提供了一个简单而强大的界面,使您可以轻松创建和操作 PDF 文件。 使用IronPDF,您可以轻松创建专业外观的PDF文档,这些文档可用于多种目的,例如生成报告、发票和其他类型的文档。

IronPDF 也具有高度可定制性,可以控制 PDF 文件的外观和布局。 开发人员可以指定页面边距、字体大小、颜色和其他属性,以创建符合其特定要求的PDF文件。

总体而言,IronPDF 是一个强大且灵活的 Java PDF 生成库。 凭借其易于使用的界面和广泛的功能,IronPDF 是任何需要生成 PDF 的应用程序的绝佳选择。

下载IronPDF for Java,这款软件产品

Darrius Serrant
全栈软件工程师(WebOps)

达瑞乌斯·塞兰特拥有迈阿密大学计算机科学学士学位,目前在Iron Software担任全栈WebOps营销工程师。从小对编码的热爱使他认为计算机既神秘又易接近,成为创意和解决问题的完美媒介。

在Iron Software,达瑞乌斯乐于创造新事物并简化复杂概念,使其更易于理解。作为我们在职开发者之一,他还自愿教授学生,将他的专业知识传授给下一代。

对达瑞乌斯而言,他的工作之所以令人满足,是因为它具有价值并产生了真正的影响。

< 前一页
如何在Java中生成PDF报告
下一步 >
Java PDF 钢印工具(初学者教程)