如何在Java中创建PDF文件

This article was translated from English: Does it need improvement?
Translated
View the article in English

使用Java以编程方式创建PDF文件可以让开发者自动化生成应用程序中的PDF文档。 这在各种情况下都很有用,例如按需生成发票、报告或其他类型的新PDF文件。

本操作指南涵盖了在Java应用程序中使用IronPDF编程创建PDF文件的用法。

IronPDF Java PDF 库

IronPDF 是一个用于从 HTML 创建 PDF 文档的 Java 库。 它的设计非常容易使用。 它提供了创建和自定义PDF的功能,包括:

  1. 能够添加文本、图像和其他类型的内容

  2. 能够选择字体和颜色,以及控制文档的布局和格式设置。

    IronPDF 基于 .NET Framework 构建,使其可以在 .NET 和 Java 应用程序中使用。 这使它成为在各种情境下创建PDFs的多功能工具。

    除了核心的PDF生成功能外,IronPDF还支持其他与PDF相关的任务。 这些功能包括在其他文件格式之间转换、从PDF中提取文本和数据以及使用密码加密保护PDF。

在 Java 应用程序中创建 PDF 文档的步骤

先决条件

要在Maven项目中使用IronPDF创建PDF,请确保计算机已安装以下先决条件软件:

  1. Java开发工具包(JDK): 编译和运行Java应用程序需要JDK。 请从以下位置下载JDK: 甲骨文网站.

  2. Maven:Maven 是从中央仓库下载项目库所必需的。 下载MavenApache Maven 网站.

  3. IronPDF 库: IronPDF 库可以作为依赖项添加到 Maven 项目中。 在其Maven依赖项中包含此工件。(以及可选的 slf4j 依赖项)在 Maven 项目的 pom.xml 文件中,如下所示:
<dependency>
   <groupId>com.ironsoftware</groupId>
   <artifactId>com.ironsoftware</artifactId>
   <version>2024.11.4</version>
</dependency>

编写代码前的重要步骤

首先,在将要编写代码的Java源文件顶部添加以下语句,以导入项目范围内所需的IronPDF库类。

import com.ironsoftware.ironpdf.*;
JAVA

接下来,通过调用 "main "方法中的 setLicenseKey 方法,使用有效的许可证密钥配置 IronPDF(在其他代码行之前).

License.setLicenseKey("Your license key");
JAVA

注意需要许可证密钥才能创建没有水印的PDF。 购买许可证密钥获取免费试用许可证密钥. 否则,请继续下一步(不添加上面一行)免费生成带水印的新 PDF 文档

在Java中从HTML字符串创建PDF文件

使用 renderHtmlAsPdf()将 HTML 字符串转换为新 PDF 文档的方法。

renderHtmlAsPdf方法的参数中,传递一个HTML标记的字符串。IronPDF将HTML内容转换为新的PdfDocument实例。

String htmlString = "<h1>Hello World!</h1><p>This is an example HTML string.</p>";
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(htmlString);
JAVA

然后,使用 saveAs 方法将 PDF 保存到本地系统的路径中:

pdf.saveAs(Paths.get("html.pdf"));
JAVA

上面的代码行创建了一个名为 "html.pdf "的文件,其中包含 HTML 字符串的内容。

在 Java 中将 HTML 页面转换为 PDF 文件

使用以下示例在Java中从本地存储的HTML文件创建PDF文件:

PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("example.html");
// Save the PdfDocument to a file
myPdf.saveAs(Paths.get("html_file_saved.pdf"));
JAVA

如上所示,renderHtmlFileAsPdf 方法从 HTML 文件创建 PDF 文件。 该方法接受一个字符串(或路径)包含文件系统上HTML文件路径。

IronPDF 将 HTML 文件中的 HTML 元素以及影响它们的任何 CSS 和 JavaScript 内容,与网页浏览器的渲染方式相同。

接下来,调用 saveAs 方法,并提供一个目标文件路径,将PDF文件保存到特定位置,就像在前一个示例中所做的那样。

使用Java从URL创建PDF文件

renderUrlAsPdf 方法用于从通过 URL 引用的网页创建 PDF 文件。 将网页的URL作为参数传递给方法,如下所示:

PdfDocument urlToPdf = PdfDocument.renderUrlAsPdf("https://ironpdf.com");
// Save the PdfDocument to a file
urlToPdf.saveAs(Paths.get("urlToPdf.pdf"));
JAVA

有关将网页转换为 PDF 的更多信息,请访问URL 转 PDF 代码示例page.

格式化PDF文件

使用 "ChromePdfRenderOptions "类为新 PDF 文件指定所需的格式。 可配置的设置包括页面方向、页面大小和边距大小等。 将 ChromePdfRenderOptions 类的一个实例作为第二个参数传递给 renderUrlAsPdf 方法,以生成具有所需设置的 PDF 文档。 请参阅此PDF 生成设置代码示例以获取更多有关如何使用 ChromePdfRenderOptions 类的信息。

保护 PDF 文件密码

IronPDF使用SecurityOptions类生成密码保护的PDF文件。 首先,创建一个 SecurityOptions 实例,然后使用 setUserPassword 方法设置密码。

SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setUserPassword("shareable");
JAVA

通过其 SecurityManager 应用于 PDF 的安全设置。 接下来的代码片段将这些设置应用于我们在 URL 到 PDF 示例中创建的 PDF 文档:

SecurityManager securityManager =  urlToPdf.getSecurity();
securityManager.setSecurityOptions(securityOptions);
urlToPdf.saveAs("protected.pdf");
JAVA

PDF文件现在已设置密码保护。 打开PDF文件时会出现密码弹出窗口:

Java 创建 PDF - 图 1

输入正确的密码后,PDF 文件将如期打开。

Java 创建 PDF - 图 2

阅读有关附加安全性和元数据设置的更多信息,请访问安全和元数据示例页面.

完整源代码

本教程的完整源文件如下所示:

//Import statement for IronPDF Java  
import com.ironsoftware.ironpdf.*;
import java.io.IOException;  
import java.nio.file.Paths; 

public class App 
{
    public static void main( String [] args ) throws IOException, PrinterException
    {
     // Apply your license key
        License.setLicenseKey("Your License Key");     
        String htmlString = "<h1>Hello World!</h1><p>This is an example HTML string.</p>";
        PdfDocument pdf = PdfDocument.renderHtmlAsPdf(htmlString);
        pdf.saveAs(Paths.get("html.pdf"));
        PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("example.pdf");
        myPdf.saveAs(Paths.get("html_file_saved.pdf"));
        PdfDocument urlToPdf = PdfDocument.renderUrlAsPdf("https://ironpdf.com");
        // Save the PdfDocument to a file
        urlToPdf.saveAs(Paths.get("urlToPdf.pdf"));

        // Password-protect the URLToPdf File.
        SecurityOptions securityOptions = new SecurityOptions();
        securityOptions.setUserPassword("shareable");
        SecurityManager securityManager =  urlToPdf.getSecurity();
        securityManager.setSecurityOptions(securityOptions);       
        urlToPdf.saveAs(Paths.get("protected.pdf"));
    }
}
JAVA

IronPDF 渲染所有图像和文本而不丢失任何格式。 按钮在PDF文件中是可点击的,文本框是可编辑的。

摘要

在本操作指南中,我们探讨了Java如何使用IronPDF创建PDF文件。 IronPDF是一个强大的库,允许开发者在Java中轻松生成和操纵PDF文件。

它还提供了一个简单直观的 API,可以轻松地从 HTML 文件、XML 文档或其他来源创建 PDF。 无论您需要生成报告、发票还是任何其他类型的文档,IronPDF都可以帮助您快速轻松地完成工作。

IronPdf 并非开源 Java 库。 它有一个商业许可从$749开始。 您可以获得免费试用在生产中进行测试。

下载 IronPDF for Java 库.