2003和2007PPT解析
演示:
StringBuilder sb = new StringBuilder();
if (StringUtils.equalsIgnoreCase(".pptx", ext)) {// 2007 2010
XMLSlideShow xmlslideshow = new XMLSlideShow(new FileInputStream(file));
// 根据xml格式的文件得到一个
XSLFPowerPointExtractor ppt = new XSLFPowerPointExtractor(xmlslideshow);
sb.append(ppt.getText());
//TODO2
// XMLSlideShow ppt = new XMLSlideShow( new FileInputStream(file) );
//
// for( XSLFSlide slide : ppt.getSlides() ){
// for( XSLFShape shape : slide.getShapes() ){
// if ( shape instanceof XSLFTextShape ){
// XSLFTextShape txtshape = (XSLFTextShape)shape ;
// System.out.println(txtshape.getText());
// } else if(shape instanceof XSLFAutoShape){
// XSLFAutoShape autoShape = (XSLFAutoShape)shape;
// System.out.println(autoShape.getText());
// } else if(shape instanceof XSLFFreeformShape){
// XSLFFreeformShape shape2 = (XSLFFreeformShape)shape;
// System.out.println(shape2.getText());
// }else if ( shape instanceof XSLFConnectorShape ) {
// XSLFConnectorShape shape2 = (XSLFConnectorShape)shape ;
// System.out.println(shape2.getShapeName()) ;
// } else if ( shape instanceof XSLFPictureShape ){
// XSLFPictureShape shape2 = (XSLFPictureShape)shape ;
// System.out.println(shape2.getShapeName()) ;
// } else if ( shape instanceof XSLFGroupShape ){
// XSLFGroupShape shape2 = (XSLFGroupShape)shape ;
// System.out.println(shape2.getShapeName()) ;
// } else if ( shape instanceof XSLFSimpleShape ){
// XSLFSimpleShape shape2 = (XSLFSimpleShape)shape ;
// System.out.println(shape2.getShapeName()) ;
// }
// }
// }
} else {// 2003 HSSFWorkbook
SlideShow ss = new SlideShow(new HSLFSlideShow(new FileInputStream(file)));
// PowerPointExtractor ppt = new PowerPointExtractor(new FileInputStream(file));
// sb.append(ppt.getText());
try {
Slide[] slides = ss.getSlides();// 获得每一张幻灯片
for (int i = 0; i < slides.length; i++) {
TextRun[] t = slides[i].getTextRuns();// 为了取得幻灯片的文字内容,建立TextRun
for (int j = 0; j < t.length; j++) {
sb.append(t[j].getText());// 这里会将文字内容加到content中去
}
sb.append(slides[i].getTitle());
}
} catch (Exception ex) {
System.err.println(ex.toString());
}
}
return sb.toString();
阅读(686) | 评论(0) | 转发(0) |