使用IRONPDF FOR JAVA

Java库PDF生成(完整代码示例)

更新 2024年九月1日
分享:

本文将探讨 IronPDF 库,这是一款用于在 Java 中创建 PDF 的优秀工具。

IronPDF:Java PDF 库

IronPDF 是一种流行的Java PDF 库使开发人员能够轻松创建PDF文档、PDF表单、数字签名PDF文件等。 使用IronPDF,您可以将现有的PDF文档用作用于生成新PDF文件的模板将PDF数据存储在数据库中以备将来使用,将PDF转换为HTML等其他格式,甚至将多个 PDF 合并为一个.

IronPDF允许用户为 PDF 添加文本注释自定义他们创建的文件。 此外,使用 IronPDF,您可以在 PDF 中包含安全设置,例如密码或水印。 它有助于将PDF功能集成到Java程序中。 IronPDF是一个极其多功能且强大的工具,可以快速且安全地生成PDF。 让我们看看IronPDF如何用于创建PDF文件。

使用 IronPDF 生成 PDF 文件

IronPDF 是创建 PDF 文件的宝贵工具。 它拥有所有所需功能,能快速将文档、网页和图像转化为稳定、安全且易于分享的PDF文件。 让我们在这个演示程序中安装 IronPDF。

安装IronPDF Java PDF库

要在 Maven 项目中安装 IronPDF Java,可以将以下依赖项添加到项目的 pom.xml 文件中:

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

这将添加 IronPDF for Java 库及其使用的 SLF4J 记录器。 建议使用最新版本的IronPDF for Java。 添加依赖项后,您可以运行 mvn install 将依赖项安装到本地资源库中,然后您的项目就可以使用 IronPDF for Java 了。

用于创建PDF文档的Java代码

此代码是用Java编写的,并使用了IronPDF库来将 HTML 转换为 PDF 文档.

// Import statement for IronPDF Java  
import com.ironsoftware.ironpdf.*;

import java.io.IOException;
import java.nio.file.Paths;

public class Main {
    public static void main(String[] args) throws IOException {
        // Apply your license key
        License.setLicenseKey("YOUR-LICENSE-KEY");
        // Set a log path  
        Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
        // Render the HTML as a PDF. Stored in myPdf as type PdfDocument  
        String html = "<!DOCTYPE html>\r\n"
                + "<html>\r\n"
                + "  <head>\r\n"
                + "    <link href='https://fonts.googleapis.com/css2?family=Popin&display=swap' rel='stylesheet'>\r\n"
                + "    <style>\r\n"
                + "      /* Add CSS styles for the invoice here */\r\n"
                + "      body{\r\n"
                + "        font-family: 'Popin', cursive;\r\n"
                + "      }\r\n"
                + "      .invoice {\r\n"
                + "        width: 80%;\r\n"
                + "        margin: 0 auto;\r\n"
                + "        border: 1px solid #ccc;\r\n"
                + "        padding: 20px;\r\n"
                + "        background-color: #f5f5f5;\r\n"
                + "        color: #333;\r\n"
                + "      }\r\n"
                + "      .invoice h1 {\r\n"
                + "        text-align: center;\r\n"
                + "      }\r\n"
                + "      .invoice .invoice-info {\r\n"
                + "        display: flex;\r\n"
                + "        justify-content: space-between;\r\n"
                + "        margin-bottom: 20px;\r\n"
                + "      }\r\n"
                + "      .invoice .invoice-info div {\r\n"
                + "        width: 45%;\r\n"
                + "      }\r\n"
                + "      .invoice table {\r\n"
                + "        width: 100%;\r\n"
                + "        border-collapse: collapse;\r\n"
                + "      }\r\n"
                + "      .invoice table th, .invoice table td {\r\n"
                + "        border: 1px solid #ccc;\r\n"
                + "        padding: 10px;\r\n"
                + "      }\r\n"
                + "      .invoice table th {\r\n"
                + "        text-align: left;\r\n"
                + "        background-color: #f5f5f5;\r\n"
                + "      }\r\n"
                + "      .invoice table td {\r\n"
                + "        text-align: right;\r\n"
                + "      }\r\n"
                + "      .invoice table td.total {\r\n"
                + "        font-weight: bold;\r\n"
                + "      }\r\n"
                + "    </style>\r\n"
                + "  </head>\r\n"
                + "  <body>\r\n"
                + "    <div class=\"invoice\">\r\n"
                + "      <h1>Invoice</h1>\r\n"
                + "      <div class=\"invoice-info\">\r\n"
                + "        <div>\r\n"
                + "          <p><strong>From:</strong></p>\r\n"
                + "          <p>Your Company Name</p>\r\n"
                + "          <p>123 Main St</p>\r\n"
                + "          <p>City, State ZIP</p>\r\n"
                + "        </div>\r\n"
                + "        <div>\r\n"
                + "          <p><strong>To:</strong></p>\r\n"
                + "          <p>Customer Name</p>\r\n"
                + "          <p>456 Park Ave</p>\r\n"
                + "          <p>City, State ZIP</p>\r\n"
                + "        </div>\r\n"
                + "      </div>\r\n"
                + "      <table>\r\n"
                + "        <thead>\r\n"
                + "          <tr>\r\n"
                + "            <th>Product</th>\r\n"
                + "            <th>Quantity</th>\r\n"
                + "            <th>Price</th>\r\n"
                + "            <th>Total</th>\r\n"
                + "          </tr>\r\n"
                + "        </thead>\r\n"
                + "        <tbody>\r\n"
                + "          <tr>\r\n"
                + "            <td>Product 1</td>\r\n"
                + "            <td>1</td>\r\n"
                + "            <td>$10.00</td>\r\n"
                + "            <td>$10.00</td>\r\n"
                + "          </tr>\r\n"
                + "          <tr>\r\n"
                + "            <td>Product 2</td>\r\n"
                + "            <td>2</td>\r\n"
                + "            <td>$5.00</td>\r\n"
                + "            <td>$10.00</td>\r\n"
                + "          </tr>\r\n"
                + "          <tr>\r\n"
                + "            <td colspan=\"3\" class=\"total\">Total:</td>\r\n"
                + "            <td class=\"total\">$20.00</td>\r\n"
                + "          </tr>\r\n"
                + "        </tbody>\r\n"
                + "      </table>\r\n"
                + "    </div>\r\n"
                + "  </body>\r\n"
                + "</html>";

        PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(html);
        //Save PDF document
        myPdf.saveAs(Paths.get("C://HTMLtoPDF.pdf"));
    }
}
JAVA

第一步是使用 setLicenseKey 方法应用许可证密钥。 密钥作为字符串参数传递; 在这种情况下,"YOUR-LICENSE-KEY" 应该替换为实际的许可证密钥。

下一步是使用 setLogPath 方法设置日志路径。 这是IronPDF引擎的日志文件将被保存的地方。 在这种情况下,它被设置为 "C:/tmp/IronPdfEngine.log"。

主方法已定义,并且一个PDFDocument通过调用创建对象renderHtmlAsPdf方法,传入一个 HTML 字符串作为参数。 这将把HTML转换为PDF并将其存储在myPdf对象中。

最后一步是使用以下命令将 myPdf 对象保存到文件中保存为方法。 文件位置作为参数以 Paths 对象的形式传递,在这种情况下为 "HTMLtoPDF.pdf"。

在这里你可以看到上述程序的输出,其中使用IronPDF Java PDF库创建了一个PDF文件。

Java 库 PDF 生成(完整代码示例),图 1:来自 HTML 字符串的输出 PDF 文件

从HTML字符串生成的输出PDF文件

从网址创建 PDF 文件

IronPDF可以将网页渲染为 PDF从各种来源,包括本地网络和外部服务器获取数据。

import com.ironsoftware.ironpdf.*;

import java.io.IOException;
import java.nio.file.Paths;

// Apply your license key
License.setLicenseKey("YOUR-LICENSE-KEY");

// Set a log path
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));

// Render the HTML as a PDF. Stored in myPdf as type PdfDocument;
PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://ironpdf.com");

// Save the PdfDocument to a file
myPdf.saveAs(Paths.get("url.pdf"));
JAVA

"(《世界人权宣言》)PdfDocument.renderUrlAsPdf该方法专为此目的而设计,接受包含要转换的网页URL的字符串。 该方法获取网页的HTML内容并将其转换为PDF文档。 IronPdf 保留了所有网络组件的外观,同时使交互功能(链接、表单字段等。)功能性。

结果如下:

Java 库 PDF 生成(完整代码示例),图2:从URL生成的输出PDF文件

从URL生成的输出PDF文件

摘要

总之,IronPDF 是一个有许多创建和操作 PDF 文件功能的宝贵 Java 库。 无论您是否需要数字签名 PDF 文档, 填写 PDF 表格或执行其他任务,IronPDF 使这些操作变得简单,只需要少量编码。

使用其可免费试用灵活的定价选项从 $749 起,IronPDF 是开发人员在其项目中添加 PDF 功能的经济高效解决方案。

< 前一页
HTML2PDF Java(代码示例教程)
下一步 >
如何在Java中生成PDF

通过Maven安装

版本:2024.11.4

<dependency>
  <groupId>com.ironsoftware</groupId>
  <artifactId>ironpdf</artifactId>
  <version>2024.11.4</version>
</dependency>

准备开始了吗? 版本: 2024.11 刚刚发布

免费 Maven 下载 查看许可证 >