在 Java 中将 Excel 电子表格转换为 PDF

当我们想要共享不需要编辑的工作表中的数据时,我们经常将此类 Excel 工作簿或特定工作表转换为 PDF 格式。在本文中,我们将学习使用文档转换 API 将 Excel 电子表格转换为 Java 中的 PDF 格式的 4 种不同方法

每种转换方法都可以在加载电子表格时对代码稍作更改或对 PDF 格式的转换选项进行一些调整来采用。本文中转换电子表格的一些可能方法如下。

用于将 Excel 文件转换为 PDF 的 Java API

GroupDocs.Conversion 提供 Java API,允许将包括 XLS、XLSX 在内的多种 Excel 文件格式转换为 PDF 格式。在本文中,我们将使用它的 GroupDocs.Conversion for Java。除了电子表格,API 还支持 documentation 中提到的文字处理文档、演示文稿、电子书、图像等的转换。

您可以从 下载部分 下载 JAR 文件,或在您的 Java 应用程序中使用最新的存储库和依赖项 Maven 配置。

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-conversion</artifactId>
        <version>21.10</version> 
</dependency>

将所有 Excel 文件转换为 PDF - Java

最简单的方法是将所有工作表转换为 PDF 格式。以下步骤将完整的工作簿(所有工作表)转换为 Java 中的 PDF 格式。

以下是将完整的 Excel 工作簿转换为 PDF 的 2 行 Java 源代码。

/*
 * 在 Java 中将所有 Excel 工作表转换为 PDF 格式
 */
Converter converter = new Converter("path/spreadsheet.xlsx");
converter.convert("path/all-sheets-converted.pdf", new PdfConvertOptions());
从 Excel 数据转换 PDF

将 Excel 表格连续转换为 PDF - Java

如果您有兴趣按顺序提取电子表格的子集,您可以通过提供起始工作表编号和连续工作表的数量来轻松完成。以下是将 Excel 工作簿工作表的任何子序列转换为 Java 中的 PDF 格式的步骤。

  • 使用 转换器 加载电子表格。
  • 使用 PdfConvertOptions 定义PDF 转换选项
  • 设置起始张数后续张数
  • **根据使用 convert() 方法的设置将选定的工作表转换为 PDF。

以下是将前两张纸转换为 PDF 的 Java 代码片段。 (工作表编号1 和 2

/*
 * 在Java中将Excel工作表序列转换为PDF格式
 */
Converter converter = new Converter("path/spreadsheet.xlsx");

PdfConvertOptions convertOptions = new PdfConvertOptions();
convertOptions.setPageNumber(1);
convertOptions.setPagesCount(2);

converter.convert("path/sequential-conversion.pdf", convertOptions);

特定的 Excel 表格到 PDF 的转换 - Java

如果您正在考虑转换随机工作表(如工作表编号 1、2、4、7,…),您可以在转换时简单地提供确切的工作表编号作为列表。以下是将任何特定的图纸编号列表转换为 Java 中的 PDF 格式的步骤。

  • 使用 转换器 加载 Excel 文件。
  • 使用 PdfConvertOptions 以列表形式提供确切的工作表编号
  • **使用 convert() 方法将列出的工作表转换为 PDF 格式。

以下代码片段将工作表编号 1 和 3 转换为 PDF 格式。

/*
 * 在Java中将指定的Excel工作表列表转换为PDF格式
 */
Converter converter = new Converter("path/spreadsheet.xlsx");

PdfConvertOptions convertOptions = new PdfConvertOptions();
convertOptions.setPages(Arrays.asList(1,3));

converter.convert("path/specific-sheets-conversion.pdf", convertOptions);

将 Excel 工作表的单元格范围转换为 PDF - Java

这是转换电子表格任何部分的不寻常方法。我们可以以与上面讨论的其他方法几乎相似的方式转换 Excel 工作表的任何单元格范围。以下是在 Java 中将工作簿工作表的单元格范围转换为 PDF 格式的步骤。

  • 定义工作表的单元格范围
  • 加载电子表格文件。
  • 通过提供连续的工作表范围或确切的工作表编号来选择工作表
  • **根据设置将工作表转换为 PDF 格式。

以下代码将工作表编号 1 的单元格区域 (A1:C20) 转换为 Java 中的 PDF 格式。

/*
 * 在Java中将指定Excel工作表的指定单元格范围转换为PDF格式
 */
// 为源 XLSX 文件准备加载选项和范围
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
loadOptions.setConvertRange("A1:C20");
Converter converter = new Converter("path/spreadsheet.xlsx", loadOptions);

PdfConvertOptions convertOptions = new PdfConvertOptions();
convertOptions.setPageNumber(1);
convertOptions.setPagesCount(1);

converter.convert("path/convert-cell-range.pdf", convertOptions);

获取免费 API 许可证

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

结论

让我们总结一下我们今天学到的东西。我们学习了使用 GroupDocs.Conversion 将 Excel 电子表格转换为 Java 中的 PDF 格式的四种不同方法。最初,我们将完整的工作簿转换为 PDF 格式,然后是连续的工作表。接下来,通过列出它们的确切表号,将多张表更改为 PDF。最后,我们从选定工作表的选定单元格范围中获取 PDF 文件。

文档 中了解有关 GroupDocs.Conversion API 的更多信息。如有疑问,请通过 论坛 联系我们。

也可以看看