在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
本文将演示如何使用 Java 在 PDF 文档中创建表格。
必须有一个第三方库,用于使用 Java 程序在 PDF 文档中创建表格。 有多个库可用于使用 Java 程序在 PDF 内创建表格。 然而,这些工具可能价格昂贵、使用起来有难度或存在性能问题。 要找到一个易于使用、可免费用于开发并能有效执行的库可能很困难。
IronPDF 是一个对操作 PDF 文件非常有用的库。 有关 IronPDF 的更多信息,请点击IronPDF for Java 官方页面.
本文将介绍以下步骤:
创建新项目
安装 IronPDF 库
创建新的 PDF 文档
创建一个表格
打开您首选的集成开发环境。本文推荐使用 IntelliJ,因此使用其他 IDE 创建新项目的步骤可能会有所不同。
打开 IntelliJ IDE,点击顶部菜单栏中的 File > New Project。 如下所示,命名您的项目,选择位置、语言、构建系统和 JDK。
IntelliJ IDE 新项目窗口
单击创建项目按钮,将创建一个新项目。
现在,在新创建的项目中安装 IronPDF 库。 继续以下步骤。
打开 pom.xml
文件,在属性关闭标记下添加以下 XML 内容。
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>2023.10.1</version>
</dependency>
在终端中键入以下命令并按回车键。
```console
mvn install
这将在本项目中安装 IronPDF。
添加以下导入语句以使用 IronPDF 类。
import com.ironsoftware.ironpdf.*;
首先,我们将学习在Java中创建简单的PDF文档。
以下示例代码将创建一个新的 PDF 文档。
public static void main(String[] args) throws IOException {
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("This is a sample PDF file");
try {
myPdf.saveAs(Paths.get("html_saved.pdf") );
} catch (IOException e) {
throw new RuntimeException(e);
}
}
"(《世界人权宣言》)renderHtmlAsPdf
该方法将一个字符串作为参数,并将该字符串转换为 PDF 文档的实例。
"(《世界人权宣言》)保存为
该函数将文件路径作为参数,并将新创建的 PDF 文档保存到参数中指定的文件路径。
根据上述代码创建 PDF,如下图所示。
新的 PDF 文档
以下代码将在 PDF 中创建一个表格。
public static void main(String[] args) throws IOException {
String tableContent = "<table>\n" +
" <tr>\n" +
" <th>Company</th>\n" +
" <th>Contact</th>\n" +
" <th>Country</th>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Alfreds Futterkiste</td>\n" +
" <td>Maria Anders</td>\n" +
" <td>Germany</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Centro comercial Moctezuma</td>\n" +
" <td>Francisco Chang</td>\n" +
" <td>Mexico</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Ernst Handel</td>\n" +
" <td>Roland Mendel</td>\n" +
" <td>Austria</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Island Trading</td>\n" +
" <td>Helen Bennett</td>\n" +
" <td>UK</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Laughing Bacchus Winecellars</td>\n" +
" <td>Yoshi Tannamuri</td>\n" +
" <td>Canada</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Magazzini Alimentari Riuniti</td>\n" +
" <td>Giovanni Rovelli</td>\n" +
" <td>Italy</td>\n" +
" </tr>\n" +
"</table>\n";
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("<h1>Example of adding table in a PDF</h1>" + tableContent);
try {
myPdf.saveAs(Paths.get("html_saved.pdf"));
} catch (IOException e) {
throw new RuntimeException(e);
}
}
上述代码使用简单的 HTML 标记,用 Java 在 PDF 中创建一个表格。 因此,要创建表格,您必须具备使用 HTML 标记的基本知识。 几乎每个 Java 程序员都掌握 HTML 知识,因此使用 HTML 标记创建新表格和表格单元格非常容易。
该程序生成的 PDF 文件如下图所示:
包含 HTML 表格的 PDF 文档
这是一个简单的表格,没有任何样式。
现在,让我们为该表格添加一些样式,如设置表宽、页边距、布局、字体、背景颜色等。
以下示例代码将格式化我们的表格,并为单元格添加样式。
public static void main(String[] args) throws IOException {
String htmlStyle = "<!DOCTYPE html>\n" +
"<html>\n" +
"<head>\n" +
"<style>\n" +
"table {\n" +
" font-family: arial, sans-serif;\n" +
" border-collapse: collapse;\n" +
" width: 100%;\n" +
"}\n" +
"\n" +
"td, th {\n" +
" border: 1px solid #dddddd;\n" +
" text-align: left;\n" +
" padding: 8px;\n" +
"}\n" +
"\n" +
"tr:nth-child(even) {\n" +
" background-color: #dddddd;\n" +
"}\n" +
"</style>\n" +
"</head>\n" +
"<body>";
String tableContent = "<table>\n" +
" <tr>\n" +
" <th>Company</th>\n" +
" <th>Contact</th>\n" +
" <th>Country</th>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Alfreds Futterkiste</td>\n" +
" <td>Maria Anders</td>\n" +
" <td>Germany</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Centro comercial Moctezuma</td>\n" +
" <td>Francisco Chang</td>\n" +
" <td>Mexico</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Ernst Handel</td>\n" +
" <td>Roland Mendel</td>\n" +
" <td>Austria</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Island Trading</td>\n" +
" <td>Helen Bennett</td>\n" +
" <td>UK</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Laughing Bacchus Winecellars</td>\n" +
" <td>Yoshi Tannamuri</td>\n" +
" <td>Canada</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Magazzini Alimentari Riuniti</td>\n" +
" <td>Giovanni Rovelli</td>\n" +
" <td>Italy</td>\n" +
" </tr>\n" +
"</table>\n</body>\n" +
"</html>";
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(htmlStyle + "Sample PDF" + tableContent);
try {
myPdf.saveAs(Paths.get("html_saved.pdf"));
} catch (IOException e) {
throw new RuntimeException(e);
}
}
添加的 CSS 用于设计 PDF 中表格的样式。 因此,根据需要使用 CSS 进行样式设计是非常有效的。
以下是该程序生成的 PDF。
包含 HTML 表格并使用 CSS 定型的 PDF 文档
上面的代码看起来很乱。 但可以通过将所有 HTML 内容移入一个 HTML 文件,然后从该文件生成 PDF 来进行清理。
创建一个新的 HTML 文件,并将所有 HTML 内容添加到该文件中,如下所示:
HTML移到自己的HTML文件中
在 Java 程序中添加以下代码
PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("Create_Table.html");
try {
myPdf.saveAs(Paths.get("html_saved.pdf") );
} catch (IOException e) {
throw new RuntimeException(e);
}
我们可以看到使用 HTML 文档生成 PDF 是多么容易。 如果您需要用 Java 创建 PDF 文件,最简单的方法是创建一个包含内容和样式的单独 HTML 文档,然后只需一行代码即可将 HTML 文档转换为 PDF。
带样式的最终 PDF 文档
本教程演示了如何使用 Java 在 PDF 文件中创建样式表,并学习了如何将 HTML 文件转换为 PDF 文件。 IronPDF for Java 还提供向 PDF 文件添加图片的功能、分割 PDF 文件, 添加页眉和页脚, 应用数字签名以及更多。 探索 IronPDF 文档了解更多有关这些功能和附加功能的信息。