
如何在使用 Java 在 PDF 文档中创建表格 (教程)
这篇文章将演示如何使用Java在PDF文档中创建表格。
在Java程序中,创建PDF文档表格需要一个第三方库。 有多种库存库可用于在Java程序中创建PDF内部表格。 然而,它们可能很昂贵,难以使用,或者有性能问题。 找到一个易于使用,免费开发并有效运行的库可能会很困难。
IronPDF是一个对操作PDF文件非常有用的库。 您可以通过点击IronPDF官方Java页面了解更多关于IronPDF的信息。
本文涵盖以下步骤:
- 创建一个新项目
- 安装IronPDF库
- 创建一个新的PDF文档
- 为其创建一个表格
- 添加动态值到PDF文档
创建一个新的Java项目
打开您首选的 IDE。本文建议使用 IntelliJ,因此使用其他 IDE 创建新项目的步骤可能有所不同。
打开IntelliJ IDE,从顶部菜单栏中点击文件 > 新项目。 命名您的项目,选择位置、语言、构建系统和JDK,如下所示。
IntelliJ IDE新项目窗口
点击创建项目按钮,一个新项目将被创建。
安装 IronPDF 库
现在,在新创建的项目中安装IronPDF库。 继续执行以下步骤。
打开pom.xml文件并添加必要的依赖项和仓库以使用IronPDF。 本文未提供pom.xml的具体内容,但请确保通过Maven的依赖管理正确包含IronPDF库。
<!-- Add IronPDF dependencies here -->
<dependencies>
<!-- Example dependency for IronPDF, actual group and artifact id to be retrieved from official documentation -->
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>VERSION_NUMBER</version>
</dependency>
</dependencies>
在您的终端中键入以下命令并按回车键安装指定的Maven依赖。
mvn install
这将在此项目中安装IronPDF。
添加以下导入语句以使用IronPDF类。
import com.ironsoftware.ironpdf.*;
首先,我们将学习使用Java创建简单的PDF文档。
创建PDF文档
以下示例代码将创建一个新的PDF文档。
public static void main(String[] args) throws IOException {
// Create a PDF document from an HTML string
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("This is a sample PDF file");
try {
// Save the created PDF document to a file
myPdf.saveAs(Paths.get("html_saved.pdf"));
} catch (IOException e) {
throw new RuntimeException(e);
}
}
[renderHtmlAsPdf](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#renderHtmlAsPdf(java.lang.String)方法接受一个字符串作为参数,并将该字符串转换为PDF文档的实例。
[saveAs](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#saveAs(java.lang.String)函数接受一个文件路径作为参数,并将新创建的PDF文档保存到参数中指定的文件路径。
上面的代码创建了一个PDF,如下图所示。
新PDF文档
为PDF文件创建表格
以下代码将在PDF中创建一个表格。
public static void main(String[] args) throws IOException {
// HTML content for creating a table
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>";
// Create a PDF document with table content
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("<h1>Example of adding table in a PDF</h1>" + tableContent);
try {
// Save the created PDF document to a file
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 {
// HTML and CSS content for styling the table
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>";
// Create a PDF document with styled table content
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(htmlStyle + "Sample PDF" + tableContent);
try {
// Save the created PDF document to a file
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文件在PDF中创建表格使用Java
创建一个新的HTML文件并将所有HTML内容添加到该文件中,如下所示:
HTML移入自己的HTML文件中
将以下代码添加到Java程序中。
// Create a PDF document from an HTML file
PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("Create_Table.html");
try {
// Save the created PDF document to a file
myPdf.saveAs(Paths.get("html_saved.pdf"));
} catch (IOException e) {
throw new RuntimeException(e);
}
我们可以看到生成一个PDF使用HTML文档是多么的简单。 如果您需要在Java中创建PDF文件,最简单的方法是创建一个包含内容和样式的单独HTML文档,然后只需一行代码将您的HTML文档转换为PDF。
带有样式的最终PDF文档
摘要
本教程演示了如何使用Java在PDF文件中创建样式化表格,并学习了将HTML文件转换为PDF文件。 IronPDF for Java还提供了添加图像到PDF文件、分割PDF文件、添加页眉和页脚、应用数字签名等功能。 探索IronPDF文档了解更多关于这些功能及额外功能的信息。

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。
相关文章


