在构建报告仪表板或电子邮件摘要时,生成电子表格数据的可视化预览是常见需求。 Conholdate.Total for Java 提供了强大的 SDK,简化了在 Java 应用程序中将 Excel 转换为图像的过程。在本指南中,您将看到如何加载 XLSX 工作簿,配置 JPEG 输出,并将工作表页面渲染为图像文件。完成后,您将拥有一个可直接运行的代码示例,能够适配到您自己的项目中。

将 Excel 文件转换为图像对您的应用程序的需求

开发人员经常需要将电子表格内容转换为静态图像,以用于网页预览、PDF 报告或移动端缩略图。通常的需求包括保留 单元格 格式、准确渲染工作表内容以及控制图像分辨率。手动打开 Excel、截屏并保存的方式无法规模化,且可能导致结果不一致。

可靠解决方案的技术约束包括:支持 XLSX 文件、准确渲染工作表布局、可配置的图像分辨率,以及能够处理跨多页打印的工作表。转换必须在服务器或桌面环境中运行,无需 Microsoft Office。

为工作选择 Conholdate.Total for Java

Conholdate.Total for Java 提供了一个直接的 API,涵盖所有所需的功能。WorkbookWorksheet 类让您可以直接访问电子表格内容,而 ImageOrPrintOptions 则提供对分辨率和图像格式的细粒度控制,SheetRender 负责实际的逐页渲染。该 SDK 可在任何 Java 运行时上运行,仅需 Maven 依赖,并能高效处理大型工作簿。

有关详细的 API 用法,请参阅官方文档WorkbookWorksheetImageOrPrintOptionsSheetRender 等类的完整参考可在API 参考中找到。您可以从发布页面下载最新的库。

在 Java 中实现 Excel 转图片转换

转换过程可以分解为几个清晰的步骤。以下章节将逐步引导您了解每个部分,并直接摘取完整示例中的简短代码片段。

通过 Maven 安装 Conholdate.Total for Java

将 Conholdate Maven 仓库和 SDK 依赖添加到您的 pom.xml 中:

<repositories>
  <repository>
    <id>conholdate-repo</id>
    <name>Conholdate Maven Repository</name>
    <url>https://repository.conholdate.com/repo/</url>
  </repository>
</repositories>

<dependency>
  <groupId>com.conholdate</groupId>
  <artifactId>conholdate-total</artifactId>
  <version>24.9</version>
  <type>pom</type>
</dependency>

加载 Excel 文件并访问工作表

使用 Workbook 类加载工作簿,然后获取要转换的工作表的引用:

// Load Excel file
com.aspose.cells.Workbook book = new com.aspose.cells.Workbook("input.xlsx");

// Get the reference of the desired worksheet
com.aspose.cells.Worksheet sheet = book.getWorksheets().get(0);

配置 JPEG 的图像输出选项

使用 ImageOrPrintOptions 设置所需的图像分辨率和格式:

// 设置图像选项
com.aspose.cells.ImageOrPrintOptions options = new com.aspose.cells.ImageOrPrintOptions();
options.setHorizontalResolution(200);
options.setVerticalResolution(200);
options.setImageType(com.aspose.cells.ImageType.JPEG);

将工作表渲染为 JPEG 图像

为工作表创建一个 SheetRender,并遍历其页面,将每个页面保存为单独的 JPEG 文件。工作表可能跨越多个打印页,因此 getPageCount() 告诉您需要多少图像:

// Convert sheet to JPG image
com.aspose.cells.SheetRender sr = new com.aspose.cells.SheetRender(sheet, options);
for (int j = 0; j < sr.getPageCount(); j++)
{
    sr.toImage(j, "excel-to-jpg" + (j + 1) + ".jpg");
}

上述步骤演示了如何使用 Conholdate.Total for Java SDK 将 Excel 转换为图像,同时让您能够控制分辨率、格式和多页工作表。

完整代码示例:将 Excel 转换为图像(支持完整工作表)

以下代码展示了上述步骤中描述的完整、可直接运行的实现。

public class ExcelToImageConverter {
    public static void main(String[] args) throws Exception {
        // Load Excel file
        com.aspose.cells.Workbook book = new com.aspose.cells.Workbook("input.xlsx");

// Get the reference of the desired worksheet
        com.aspose.cells.Worksheet sheet = book.getWorksheets().get(0);

// Set image options
        com.aspose.cells.ImageOrPrintOptions options = new com.aspose.cells.ImageOrPrintOptions();
        options.setHorizontalResolution(200);
        options.setVerticalResolution(200);
        options.setImageType(com.aspose.cells.ImageType.JPEG);

// Convert sheet to JPG image
        com.aspose.cells.SheetRender sr = new com.aspose.cells.SheetRender(sheet, options);
        for (int j = 0; j < sr.getPageCount(); j++)
        {
            sr.toImage(j, "excel-to-jpg" + (j + 1) + ".jpg");
        }

System.out.println("Excel to image conversion completed successfully.");
    }
}

注意: 此代码示例演示了核心功能。在项目中使用之前,请确保更新文件路径(input.xlsx)以匹配实际文件位置,验证所有必需的依赖项已正确安装,并在开发环境中彻底测试。如果遇到任何问题,请参考官方文档或联系支持团队获取帮助。

结论

在 Java 中将 Excel 转换为图像变得直观,只要利用 Conholdate.Total for Java。SDK 处理工作表渲染,并以最少的代码生成高质量的 JPEG 输出。按照分步指南,您可以将此功能集成到报表工具、电子邮件生成器或任何需要可视化电子表格表示的应用程序中。请记住,生产部署需要商业许可证;您可以在 Conholdate.Total pricing 页面查看定价选项,并在评估期间从 temporary license page 获取临时许可证。

FAQs

  • 如何在 Java 中将 Excel 转换为图像?
    使用 Workbook 加载文件,从 book.getWorksheets() 获取所需的工作表,配置 ImageOrPrintOptions,然后使用 SheetRender 进行渲染。

  • 我可以将特定的 Excel 工作表转换为图像吗?
    是的。使用 book.getWorksheets().get(index) 选择工作表,然后将其传递给 SheetRender 进行转换。

  • 为什么我会从单个工作表得到多个图像文件?
    工作表可能跨越多个打印页。SheetRender.getPageCount() 返回页数,循环会为每页保存一个图像。

  • 生产使用需要什么许可?
    需要商业许可证。请在 Conholdate.Total 定价 页面查看费用,并从 临时许可证页面 获取临时许可证。

阅读更多