需求背景:
给定ppt模板,支持对ppt中内容修改并生成新的ppt,且表格/图片/文字样式还是用模板中的样式
java poi提供了操作ppt的api主要分两种
一种XSLF对应pptx文件
一种HSLF对应ppt文字
这里我们主要介绍解析pptx文件的
1.引入maven依赖
目前用到的版本比较低,主要api方法应该变化不大
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>3.15</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.15</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
<version>4.0.1</version>
</dependency>
``
2.简要代码如下
File file = new File(sourcePath);
inputStream = new FileInputStream(file);
xmlSlideShow = new XMLSlideShow(inputStream);//获取ppt流对象
List<XSLFSlide> slides = xmlSlideShow.getSlides