用 Java 在 PDF 文件中创建表格

表格可以让读者快速浏览数据,而无需阅读大量文本。因此,表格被认为是文件的组成部分。在处理 PDF 自动化并以编程方式生成 PDF 文件时,您可能会经常遇到创建表格的需要。为此,本文介绍了如何使用 Java 在 PDF 文件中创建表格。

用于创建 PDF 表格的 Java API - 免费下载

Aspose.PDF for Java 是一种流行的 API,用于在 Java 应用程序中执行 PDF 生成和操作。使用 API,您可以无缝地创建简单和复杂布局的 PDF 文件。我们将使用此 API 在新的或现有的 PDF 文件中创建表格。您可以 下载 API 或使用以下 Maven 配置安装它。

存储库:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

依赖:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>22.4</version>
</dependency>

用 Java 在 PDF 中创建表格

您可以使用 Aspose.PDF for Java 在新的或现有的 PDF 文件中创建表格。以下是用 Java 在 PDF 文件中创建表的步骤。

以下代码示例展示了如何使用 Java 在 PDF 文件中创建表格。

// 加载或创建文档
Document doc = new Document("input.pdf");

// 初始化表的新实例
Table table = new Table();

// 将表格边框颜色设置为 LightGray
table.setBorder(new BorderInfo(BorderSide.All, .5f, Color.getLightGray()));

// 设置表格单元格的边框
table.setDefaultCellBorder(new BorderInfo(BorderSide.All, .5f, Color.getLightGray()));

// 创建一个循环以添加 10 行
for (int row_count = 1; row_count < 10; row_count++) {
    // 向表中添加行
    Row row = table.getRows().add();
    // 添加表格单元格
    row.getCells().add("Column (" + row_count + ", 1)");
    row.getCells().add("Column (" + row_count + ", 2)");
    row.getCells().add("Column (" + row_count + ", 3)");
}

// 将表格对象添加到输入文档的第一页
doc.getPages().get_Item(1).getParagraphs().add(table);

// 保存包含表格的更新文档
doc.save("create-table.pdf");

以下是上述代码示例的输出。

用 Java 在 PDF 文件中创建表格

Java 创建具有自定义边框和边距的 PDF 表格

您还可以根据需要自定义 PDF 中表格的边框和边距。例如,您可以设置边框宽度、边框样式以及顶部、底部、左侧和右侧边距。以下是在 Java 中为 PDF 文件中的表格设置边框和边距的步骤。

以下代码示例展示了如何使用 Java 为 PDF 中的表格设置边框和边距。

// 通过调用其空构造函数来实例化 Document 对象
Document doc = new Document();

// 添加页面
Page page = doc.getPages().add();

// 实例化一个表对象
Table tab1 = new Table();

// 在所需部分的段落集合中添加表格
page.getParagraphs().add(tab1);

// 设置表格的列宽
tab1.setColumnWidths ("50 50 50");

// 使用 BorderInfo 对象设置默认单元格边框
tab1.setDefaultCellBorder(new BorderInfo(BorderSide.All, 0.1F));

// 使用另一个自定义 BorderInfo 对象设置表格边框
tab1.setBorder (new BorderInfo(BorderSide.All, 1F));

// 创建 MarginInfo 对象并设置其左、下、右和上边距
MarginInfo margin = new MarginInfo();
margin.setTop (5f);
margin.setLeft (5f);
margin.setRight (5f);
margin.setBottom (5f);

// 将默认单元格填充设置为 MarginInfo 对象
tab1.setDefaultCellPadding(margin);

// 在表格中创建行,然后在行中创建单元格
Row row1 = tab1.getRows().add();
row1.getCells().add("col1");
row1.getCells().add("col2");
row1.getCells().add();

TextFragment mytext = new TextFragment("col3 with large text string");

row1.getCells().get_Item(2).getParagraphs().add(mytext);
row1.getCells().get_Item(2).setWordWrapped(false);

Row row2 = tab1.getRows().add();
row2.getCells().add("item1");
row2.getCells().add("item2");
row2.getCells().add("item3");

// 保存 PDF
doc.save("create-table-margin-border.pdf");

以下屏幕截图显示了上述代码示例的输出。

创建具有自定义边框和边距的 PDF 表格 Java

Java 创建 PDF 表格 - 应用列调整

Aspose.PDF for Java 还允许您自定义 PDF 中表格的列调整。例如,您可以使表格自动适应窗口或内容。以下是使用Java设置PDF表格列调整的步骤。

以下代码示例展示了如何使用 Java 设置 PDF 中表格的列调整。

// 通过调用其空构造函数来实例化 PDF 对象
Document doc = new Document();

// 在 PDF 对象中创建部分
Page sec1 = doc.getPages().add();

// 实例化一个表对象
Table tab1 = new Table();

// 在所需部分的段落集合中添加表格
sec1.getParagraphs().add(tab1);

// 设置表格的列宽
tab1.setColumnWidths("50 50 50");
tab1.setColumnAdjustment(ColumnAdjustment.AutoFitToWindow);

// 使用 BorderInfo 对象设置默认单元格边框
tab1.setDefaultCellBorder(new BorderInfo(BorderSide.All, 0.1F));

// 使用另一个自定义 BorderInfo 对象设置表格边框
tab1.setBorder(new BorderInfo(BorderSide.All, 1F));

// 创建 MarginInfo 对象并设置其左、下、右和上边距
MarginInfo margin = new MarginInfo();
margin.setTop(5f);
margin.setLeft(5f);
margin.setRight(5f);
margin.setBottom(5f);

// 将默认单元格填充设置为 MarginInfo 对象
tab1.setDefaultCellPadding(margin);

// 在表格中创建行,然后在行中创建单元格
Row row1 = tab1.getRows().add();
row1.getCells().add("col1");
row1.getCells().add("col2");
row1.getCells().add("col3");
Row row2 = tab1.getRows().add();
row2.getCells().add("item1");
row2.getCells().add("item2");
row2.getCells().add("item3");

// 保存包含表格的更新文档
doc.save("create-table-autofit.pdf");

用于创建 PDF 表的 Java API - 获得免费许可证

您可以获得免费的临时许可证 以便在没有评估限制的情况下使用 Aspose.PDF for Java。

结论

在本文中,您学习了如何使用 Java 在 PDF 文件中创建表格。此外,您已经了解了如何自定义边框。 PDF中表格的边距和列调整。此外,您可以使用 文档 探索更多关于 Java PDF API 的信息。如果您有任何问题或疑问,可以通过我们的 论坛 与我们联系。

也可以看看