gpt4 book ai didi

java - 如何将 Excel 中的图表另存为图像/PDF?

转载 作者:行者123 更新时间:2023-11-30 02:57:31 26 4
gpt4 key购买 nike

我想使用 Apache POI 和 Java 从我的 .xlsx 文件中提取/读取图表(条形图/饼图等) > 并将其另存为图像或 PDF 到我的硬盘上。

这可能吗?如果是,怎么办?

谢谢!

最佳答案

经过大量调查,显然我发现使用 Apache POI 从 Excel 中提取图表并将其另存为图像或 PDF 是不可能的。

在这种情况下可以采取的方法是使用基于 COM 的解决方案,使用 Com4j ( http://com4j.kohsuke.org/ ) 将 Excel 转换为 PDF,然后使用 Apache PDFBox ( https://pdfbox.apache.org/ ) 从 PDF 转换为图像

<小时/>

下面简要介绍如何使用 Com4j 以编程方式将 Excel 转换为 PDF:

  1. 使用以下命令从 Excel 生成 Java 类工件:

    java -jar tlbimp-2.1.jar -o wsh -p com.mycompany.excel4j "C:\Program Files (x86)\Microsoft Office\Office14\EXCEL.exe"

    我们需要 3 个 JAR 来进行上述转换:com4j-2.1.jartlbimp-2.1.jarargs4j-2.0.8.jar>

    我们可以从 - http://com4j.kohsuke.org/maven-com4j-plugin/dependencies.html 下载相应的 JAR

    更多信息请引用:http://com4j.kohsuke.org/

  2. 将生成的 Java 工件复制到您的工作区或创建这些工件的 JAR,并在将其添加到应用程序类路径后使用。

  3. 使用以下代码片段从 Java 调用生成的 COM API,并将指定 Excel 文件的第一张工作表转换为 PDF(在您的计算机上相应地替换以下代码片段中提到的 Excel 和 PDF 文件的路径):

    public static void main(String[] args) throws Exception {
    _Application excelApplication = ClassFactory.createApplication();

    _Workbook workbook = excelApplication
    .workbooks()
    .open("C:\\Users\\Akki\\Desktop\\MyExcel.xlsx",
    null, null, null, null,
    null, null, null,
    null, null, null, null, null,
    null, null, 0);

    workbook.exportAsFixedFormat(XlFixedFormatType.xlTypePDF, "C:\\Users\\Akki\\Desktop\\MyPDF.pdf", null, null, null, null, null, null, null);

    workbook.close(false, null,null, 0);

    excelApplication.quit();

    System.out.println("Converted Excel to PDF!"); }

干杯,

阿克谢

关于java - 如何将 Excel 中的图表另存为图像/PDF?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36834462/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com