如何使用Apache POI更改.pptx文件中的现有自定义属性/属性

时间:2013-06-21 11:39:20

标签: java apache-poi powerpoint-2007 hslf

我想使用Apache POI以编程方式更改.pptx文件的属性。我使用Itext完成了.docx和.pdf。对于.pptx文件,推荐的软件包XLSF没有任何方法来检索/更改.pptx文件的属性。相反,有一些方法可以检索没有幻灯片,数据等。任何人都可以帮忙吗?提前致谢

1 个答案:

答案 0 :(得分:0)

您需要查看JavaDocs for XSLFSlideShow。从那里,你会看到它有一个方法getProperties()。返回POIXMLProperties object,它可以让您获得OOXML文件(例如.pptx)具有的三种不同类型的属性 - 核心,扩展和自定义。

接下来,您需要确定要更改的属性类型。假设您想要更改标题(核心属性),您可以执行以下操作:

OPCPackage pkg = OPCPackage.open("input.pptx");
XSLFSlideShow slideshow = new XSLFSlideShow(pkg);

POIXMLProperties props = slideshow.getProperties();
CoreProperties cp = props.getCoreProperties();
cp.setTitle("I changed the title!");

FileOutputStream out = new FileOutputStream("output.pptx");
slideshow.write(out);
out.close();
pkg.close();