在 JAVA 中使用 IRONPDF 如何从 Java 应用程序动态生成 PDF 文件 Darrius Serrant 已更新:2025年7月28日 下载 IronPDF Maven 下载 JAR 下载 免费试用 LLM副本 LLM副本 将页面复制为 Markdown 格式,用于 LLMs 在 ChatGPT 中打开 向 ChatGPT 咨询此页面 在双子座打开 向 Gemini 询问此页面 在 Grok 中打开 向 Grok 询问此页面 打开困惑 向 Perplexity 询问有关此页面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 复制链接 电子邮件文章 本教程将解释如何在 Java 应用程序中动态创建 PDF 文件,并探讨从文本、URL 和 HTML 页面创建 PDF 页面的代码示例。 之后,它将涵盖从新文档实例创建受密码保护的 PDF 文件。 IronPDF Java 库是实现这一目的的理想选择,因为它可以免费用于开发,更加安全,在一个库中提供所有功能,准确率达到 100%,而且性能特别好。 在继续前行之前,我们先来简单介绍一下 IronPDF。 ## 如何从 Java 应用程序动态生成 PDF 文件 安装 Java 库以动态生成 PDF 从自定义HTML字符串创建PDF 从具有复杂CSS样式的HTML文件生成PDF 使用URL链接生成PDF,并可以在Java中添加页眉和页脚 为动态生成的PDF文件设置密码 IronPDF IronPDF Java Library 是 Iron Software 开发的最流行的 Java PDF 库,用于创建 PDF、编辑新文件和操作现有 PDF。 它的设计兼容多种 JVM 语言,包括 Java、Scala 和 Kotlin,并可在多种平台上运行,包括 Windows、Linux、Docker、Azure 和 AWS。 IronPDF 可与 IntelliJ IDEA 和 Eclipse 等流行的集成开发环境配合使用。 主要功能包括 从 HTML、HTTP、JavaScript、CSS、XML 文档和各种图像格式创建 PDF 文件的能力。 此外,IronPDF 还提供添加页眉和页脚、在 PDF 中创建表格的功能、添加数字签名、附件、实现密码和安全功能。 它支持完整的多线程和更多! 现在,让我们从创建动态文档的代码示例开始。 首先,创建一个新的 Maven 资源库项目。 创建一个新的Java项目 为便于演示,本教程将使用 IntelliJ IDE。您可以使用自己选择的集成开发环境。创建新 Java 项目的步骤可能因 IDE 而异。请使用以下步骤: 1.启动 IntelliJ IDE。 选择文件>新建>项目。 3.输入项目标题。 4.选择地点、语言、构建系统和 JDK。 点击创建按钮。 创建项目 命名您的项目,选择位置、语言、构建系统和 JDK,然后选择 创建按钮选项。 将创建一个新项目。 现在,在此演示 Java 应用程序中安装 IronPDF for Java。 安装 IronPDF for Java 库 下一步是在pom.xml文件中添加一个依赖项以安装IronPDF。 在pom.xml文件中添加以下XML源代码,如下所示。 <dependency> <groupId>com.ironsoftware</groupId> <artifactId>ironpdf</artifactId> <version>INSERT_LATEST_VERSION_HERE</version> </dependency> <dependency> <groupId>com.ironsoftware</groupId> <artifactId>ironpdf</artifactId> <version>INSERT_LATEST_VERSION_HERE</version> </dependency> XML 将INSERT_LATEST_VERSION_HERE替换为Maven库中的最新版本IronPDF。 添加依赖关系后,构建项目。 应用程序将自动从 Maven 资源库中安装库。 让我们从一个将 HTML 字符串转换为 PDF 文件的简单例子开始。 创建 PDF 文档 请考虑以下示例: import com.ironsoftware.ironpdf.PdfDocument; import java.io.IOException; import java.nio.file.Paths; public class HtmlToPdfExample { public static void main(String[] args) { // Define HTML content String htmlString = "<h1>My First PDF File</h1><p>This is a sample PDF file</p>"; // Convert HTML content to PDF PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(htmlString); // Save the PdfDocument to a file try { myPdf.saveAs(Paths.get("myPDF.pdf")); } catch (IOException e) { e.printStackTrace(); } } } import com.ironsoftware.ironpdf.PdfDocument; import java.io.IOException; import java.nio.file.Paths; public class HtmlToPdfExample { public static void main(String[] args) { // Define HTML content String htmlString = "<h1>My First PDF File</h1><p>This is a sample PDF file</p>"; // Convert HTML content to PDF PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(htmlString); // Save the PdfDocument to a file try { myPdf.saveAs(Paths.get("myPDF.pdf")); } catch (IOException e) { e.printStackTrace(); } } } JAVA 在上述函数中,HTML 内容被分配给一个字符串变量。 renderHtmlAsPdf 方法接受一个字符串作为参数,并将HTML内容转换为PDF文档实例。 saveAs 方法接受位置路径作为输入,并将PDF文件实例保存到所选目录。 由上述代码生成的 PDF 如下所示。 输出 从 HTML 文件生成 PDF 文件 IronPDF 还提供从 HTML 文件生成 PDF 文件的神奇功能。 示例中将使用的 HTML 文件示例如下所示。 使用新段落渲染 HTML. 以下是生成 PDF 的示例代码片段: import com.ironsoftware.ironpdf.PdfDocument; import java.io.IOException; public class HtmlFileToPdfExample { public static void main(String[] args) { // Convert HTML file to PDF PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("myFile.html"); // Save the PdfDocument to a file try { myPdf.saveAs("myPDF.pdf"); } catch (IOException e) { e.printStackTrace(); } } } import com.ironsoftware.ironpdf.PdfDocument; import java.io.IOException; public class HtmlFileToPdfExample { public static void main(String[] args) { // Convert HTML file to PDF PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("myFile.html"); // Save the PdfDocument to a file try { myPdf.saveAs("myPDF.pdf"); } catch (IOException e) { e.printStackTrace(); } } } JAVA renderHtmlFileAsPdf 方法接受HTML文件的路径作为参数,从HTML文件生成PDF文档。此PDF文件随后使用saveAs方法保存到本地磁盘。 该程序生成的 PDF 格式文件如下所示。 PDF 输出 下一步是使用一个包含 JavaScript 和 CSS 的相当大的 HTML 文档,并在将 HTML 转换为 PDF 时检查设计的准确性和一致性。 从 HTML 文件生成 PDF 文件 将使用以下 HTML 页面示例,其中包括图片、动画、样式、jQuery 和 Bootstrap。 HTML 页面示例 HTML示例 从 HTML 文档示例中可以看出,该文档具有丰富的样式并包含图形。 该 HTML 文件将被转换为 PDF 文档,并将对内容和样式的准确性进行评估。 将使用上述示例中的同一行代码。 import com.ironsoftware.ironpdf.PdfDocument; import java.io.IOException; public class StyledHtmlToPdfExample { public static void main(String[] args) { // Convert HTML file with styling to PDF PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("index.html"); // Save the PdfDocument to a file try { myPdf.saveAs("styledPDF.pdf"); } catch (IOException e) { e.printStackTrace(); } } } import com.ironsoftware.ironpdf.PdfDocument; import java.io.IOException; public class StyledHtmlToPdfExample { public static void main(String[] args) { // Convert HTML file with styling to PDF PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("index.html"); // Save the PdfDocument to a file try { myPdf.saveAs("styledPDF.pdf"); } catch (IOException e) { e.printStackTrace(); } } } JAVA 前面的例子已经包含了代码解释。 其他内容不变; 这是输出的 PDF 文件: HTML 转 PDF 使用 IronPDF 创建 PDF 文件非常简单。 源文件的格式和内容必须保持一致。 也可使用 URL 创建 PDF 文件。 将 URL 转换为 PDF 文档 以下代码示例将从 URL 生成 PDF 文件。 import com.ironsoftware.ironpdf.PdfDocument; import java.io.IOException; public class UrlToPdfExample { public static void main(String[] args) { // Convert URL to PDF PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF"); // Save the PdfDocument to a file try { myPdf.saveAs("urlPDF.pdf"); } catch (IOException e) { e.printStackTrace(); } } } import com.ironsoftware.ironpdf.PdfDocument; import java.io.IOException; public class UrlToPdfExample { public static void main(String[] args) { // Convert URL to PDF PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF"); // Save the PdfDocument to a file try { myPdf.saveAs("urlPDF.pdf"); } catch (IOException e) { e.printStackTrace(); } } } JAVA renderUrlAsPdf 方法接受一个URL作为参数,并将其转换为PDF文档。 此PDF文档稍后使用saveAs方法保存到本地磁盘。 以下是输出的 PDF 文件: 输出 PDF 还可以添加水印、页眉、页脚、数字签名、转换 XML 文件/JSP 页面等。 下一步是生成受密码保护的 PDF。 生成受密码保护的 PDF 文件 以下示例代码演示了为生成的 PDF 文件添加安全性的示例。 import com.ironsoftware.ironpdf.PdfDocument; import com.ironsoftware.ironpdf.security.PdfEditSecurity; import com.ironsoftware.ironpdf.security.PdfPrintSecurity; import com.ironsoftware.ironpdf.security.SecurityOptions; import java.io.IOException; import java.nio.file.Paths; public class SecurePdfExample { public static void main(String[] args) { // Load an existing PDF document PdfDocument myPdf = PdfDocument.fromFile(Paths.get("myPDF.pdf")); // Configure security options SecurityOptions securityOptions = new SecurityOptions(); securityOptions.setAllowUserEdits(PdfEditSecurity.NO_EDIT); securityOptions.setAllowUserAnnotations(false); securityOptions.setAllowUserPrinting(PdfPrintSecurity.NO_PRINT); securityOptions.setAllowUserFormData(false); securityOptions.setOwnerPassword("123456"); // Set owner password securityOptions.setUserPassword("123412"); // Set user password // Apply security options to the PDF document myPdf.applySecurity(securityOptions); // Save the secured PdfDocument to a file try { myPdf.saveAs(Paths.get("securedPDF.pdf")); } catch (IOException e) { e.printStackTrace(); } } } import com.ironsoftware.ironpdf.PdfDocument; import com.ironsoftware.ironpdf.security.PdfEditSecurity; import com.ironsoftware.ironpdf.security.PdfPrintSecurity; import com.ironsoftware.ironpdf.security.SecurityOptions; import java.io.IOException; import java.nio.file.Paths; public class SecurePdfExample { public static void main(String[] args) { // Load an existing PDF document PdfDocument myPdf = PdfDocument.fromFile(Paths.get("myPDF.pdf")); // Configure security options SecurityOptions securityOptions = new SecurityOptions(); securityOptions.setAllowUserEdits(PdfEditSecurity.NO_EDIT); securityOptions.setAllowUserAnnotations(false); securityOptions.setAllowUserPrinting(PdfPrintSecurity.NO_PRINT); securityOptions.setAllowUserFormData(false); securityOptions.setOwnerPassword("123456"); // Set owner password securityOptions.setUserPassword("123412"); // Set user password // Apply security options to the PDF document myPdf.applySecurity(securityOptions); // Save the secured PdfDocument to a file try { myPdf.saveAs(Paths.get("securedPDF.pdf")); } catch (IOException e) { e.printStackTrace(); } } } JAVA 通过上述代码,PDF 文件为只读文件,不允许进行编辑或段落对齐。 文件还限制打印,确保无法打印。 还设置了密码。 文件现在非常安全。 通过这种方式,可以定义不同的文件权限,并使用 IronPDF 生成动态输出。 摘要 本教程演示了如何生成 PDF 文件。 根据 HTML 字符串、HTML 文件和 URL 创建 PDF 文件,示例从简单到复杂不等。 还有很多有用的功能,如添加水印、页脚、页眉、前景色、合并和拆分页面等。这里无法一一介绍; 请访问IronPDF官方文档进行进一步探讨。 通过 IronPDF,HTML 到 PDF 的转换变得轻而易举。 只需一行代码即可将 HTML 转换为 PDF。 PDF 文件中还添加了一些安全措施。它更快、更准确、更安全。 每个生成的 PDF 都包含 IronPDF 水印。 这是因为使用的是权限有限的免费开发版本,而不是商业许可证。 您可以根据需要购买 免费试用版或 完整许可证,以摆脱这种情况。 常见问题解答 如何在Java中从HTML生成PDF文件? 您可以通过使用IronPDF的renderHtmlAsPdf方法将HTML字符串转换,以及renderHtmlFileAsPdf方法用于HTML文件,在Java中从HTML生成PDF文件。 我应该使用什么方法在Java中将URL转换为PDF? 要在Java中将URL转换为PDF,请使用IronPDF的renderUrlAsPdf方法,这使您可以轻松地从网页创建PDF。 如何在Java中用密码保护PDF? 在Java中,您可以使用IronPDF设置SecurityOptions来为PDF文档添加密码并管理权限,从而保护PDF。 IronPDF在将HTML转换为PDF时能处理复杂的CSS吗? 是的,IronPDF可以在将HTML转换为PDF时处理复杂的CSS,确保生成的PDF文档中样式准确反映。 IronPDF的免费开发版本有什么限制? IronPDF的免费开发版本在每个生成的PDF上都包含水印。购买商业许可证可以消除此限制。 IronPDF为PDF提供了哪些附加功能? IronPDF提供的附加功能包括添加水印、页眉、页脚以及合并PDF中的页面。 在新的Java项目中如何设置IronPDF? 要在新的Java项目中设置IronPDF,请通过Maven安装库,然后将必要的类导入到您的项目中以开始生成PDF。 我可以限制IronPDF生成的PDF的编辑和打印吗? 是的,IronPDF允许您通过应用特定的安全设置来限制PDF文档的编辑、注释、打印和表单数据录入。 IronPDF for Java 支持哪些平台? IronPDF for Java 支持广泛的平台,包括Windows、Linux、Docker、Azure和AWS。 在哪里可以找到使用IronPDF在Java中的详细文档? 可以在IronPDF官方网站上找到使用Java的详细文档和示例,提供全面的资源和指南。 Darrius Serrant 立即与工程团队聊天 全栈软件工程师(WebOps) Darrius Serrant 拥有迈阿密大学的计算机科学学士学位,目前在 Iron Software 担任全栈 WebOps 市场工程师。从小就被编码吸引,他认为计算机既神秘又易于接触,使其成为创意和问题解决的理想媒介。在 Iron Software,Darrius 喜欢创造新事物,并简化复杂概念以使其更易理解。作为我们常驻的开发者之一,他还自愿教授学生,与下一代分享他的专业知识。对于 Darrius 来说,他的工作令人满意,因为它被重视并产生真正的影响。 相关文章 已更新2026年1月18日 如何在 Java 中将 TIFF 转换为 PDF 本完整指南将引导您在 Java 中使用 IronPDF 无缝地将 TIFF 图像转换为 PDF。 阅读更多 已更新2025年7月28日 如何在 Java 中将 PDF 转换为 PDFA 在本文中,我们将探讨如何在 Java 中使用 IronPDF 将 PDF 文件转换为 PDF/A 格式。 阅读更多 已更新2025年7月28日 如何在 Java 中创建 PDF 文档 本文将提供一个关于在 Java 中处理 PDF 的全面指南,涵盖关键概念、最佳库和示例。 阅读更多 如何在 Java 中写入 PDF 文件Java PDF 转换器 (代码示例教程)