在JAVA中把PPT文档转换为图片如JPG
悬赏:45 发布时间:2008-08-07 提问人:Jatula (初级程序员)
问题如标题:本人从网络上找了两个相关的例子:
只能获取图片:
public class PPTToImageConverter {
public static void main(String[] args) throws Exception {
SlideShow ppt = new SlideShow(new HSLFSlideShow("D:/test.ppt"));
// extract all pictures contained in the presentation
PictureData[] pdata = ppt.getPictureData();
for (int i = 0; i < pdata.length; i++) {
PictureData pict = pdata[i];
// picture data
byte[] data = pict.getData();
int type = pict.getType();
String ext;
switch (type) {
case Picture.JPEG:
ext = ".jpg";
break;
case Picture.PNG:
ext = ".png";
break;
case Picture.WMF:
ext = ".wmf";
break;
case Picture.EMF:
ext = ".emf";
break;
case Picture.PICT:
ext = ".pict";
break;
default:
continue;
}
FileOutputStream out = new FileOutputStream("D:/pict_" + i + ext);
out.write(data);
out.close();
}
}
}
只能获取文本:
public static String readPpt(String path) throws Exception {
StringBuffer content = new StringBuffer("");
try {
SlideShow ss = new SlideShow(new HSLFSlideShow(path));
//path为文件的全路径名称,建立SlideShow
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++) {
content.append(t[j].getText());
//这里会将文字内容加到content中去
}
content.append(slides[i].getTitle());
}
} catch (Exception ex) {
System.out.println(ex.toString());
}
return content.toString().trim();
}
暂不考虑用DLL调用;
问题补充:
上面就是采用POI的方法;
问题补充:
那跟别存为,选择存储类型为图片类型,一次存出来有什么区别,重点能够跟程序结合!
该问题已经关闭: 一個字,慘
回答
目前没法实现
也没有一个简单的途径 将他们提及的东西 实现为所需的功能
但是
1、需要装一个虚拟打印机,先”打印“生成ps描述文件。
2、无法在java中调用和控制。
显然也不合lz的期望。




