Apache POI PPT(Java) - 从PPT中删除图表对象

时间:2018-02-14 18:20:26

标签: java xml apache-poi powerpoint

我正在更新PPT模板,其中组织了一些占位符以接收新的动态值。

某些图表可能会收到不完整的值,因此我想从幻灯片中完全删除它们。

为了匹配每个图表并更新它,我使用XSLFChart对象。所以我遍历每个图表并使用标题更新那些成功识别每个图表的图表 - >新价值的关键。

如果我决定,我无法找到删除占位符图表的功能。

我的代码与下面的代码类似。

感谢您的任何建议。

PS我找到了这篇文章Removing chart from PowerPoint slide with Apache POI

但无法将XSLFChart链接到XSLFGraphicFrame,因此我无法利用此建议。

    List<XSLFSlide> allSlides = ppt.getSlides();
    int updatedElements = 0;
    for (XSLFSlide currentSlide : allSlides) {
        for (POIXMLDocumentPart part : currentSlide.getRelations()) {
            if (part instanceof XSLFChart) {
                XSLFChart chart = (XSLFChart) part;
                if (SOMETHING_TRUE){
                chart.remove() <-- ANYTHING LIKE THIS?
                }
            }
        }
    }

0 个答案:

没有答案