gpt4 book ai didi

java - 如何使用java api合并两个具有图表和表格的pptx文件?

转载 作者:行者123 更新时间:2023-12-02 23:43:22 24 4
gpt4 key购买 nike

我尝试通过java API(Apache POI)合并两个pptx文件它适用于仅包含文本内容的 PPTX。

我需要帮助来合并两个 PPTX 文件而不丢失图表、表格、图像、主题等。是否有任何开源 java API 可以实现此目的?

最佳答案

披露:我在 Plutext 工作

Plutext 的 Docx4j 企业版可以合并复杂的演示文稿。您可以决定输出是否采用第一个 pptx 的外观,或保留输入的单独外观/感觉。简单用法如下:

    String[] deck = {"deck1.pptx", "deck2.pptx"};               

PresentationBuilder builder = new PresentationBuilder();
builder.setThemeTreatment(ThemeTreatment.RESPECT); // preserve appearance of each deck?

for (int i=0 ; i< deck.length; i++) {

// Create a SlideRange representing the slides in this pptx
SlideRange sr = new SlideRange(
(PresentationMLPackage)OpcPackage.load(
new File(DIR_IN + deck[i])));

// Add the slide range to the output
builder.addSlideRange(sr);

}

builder.getResult().save(
new File("OUT_MergeWholePresentations.pptx"));

Docx4j Enterprise Ed 是一个商业产品。我不知道有哪个开源解决方案可以通过高级 API 提供您想要的东西。与 POI 一样,您可以使用开源 docx4j/pptx4j 的低级 API 自行实现您想要的功能,但要做到这一点,您需要对 pptx 文件格式和 pptx4j 有充分的了解。 (docx4j/pptx4j 使用 JAXB;POI 使用 XML Bean)

关于java - 如何使用java api合并两个具有图表和表格的pptx文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42006934/

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