将PowerPoint幻灯片导出到java.awt.Graphics2D
我开始测试将ppt文档转换为jpeg或png图像。我使用java进行测试。 按照apache web:上的说明和代码进行操作:将PowerPoint幻灯片导出到java.awt.Graphics2D,java,apache,apache-poi,Java,Apache,Apache Poi,我开始测试将ppt文档转换为jpeg或png图像。我使用java进行测试。 按照apache web:上的说明和代码进行操作: FileInputStream is = new FileInputStream("slideshow.ppt"); SlideShow ppt = new SlideShow(is); is.close(); Dimension pgsize = ppt.getPageSize(); Slide[]
FileInputStream is = new FileInputStream("slideshow.ppt");
SlideShow ppt = new SlideShow(is);
is.close();
Dimension pgsize = ppt.getPageSize();
Slide[] slide = ppt.getSlides();
for (int i = 0; i < slide.length; i++) {
BufferedImage img = new BufferedImage(pgsize.width, pgsize.height, BufferedImage.TYPE_INT_RGB);
Graphics2D graphics = img.createGraphics();
//clear the drawing area
graphics.setPaint(Color.white);
graphics.fill(new Rectangle2D.Float(0, 0, pgsize.width, pgsize.height));
//render
slide[i].draw(graphics);
//save the output
FileOutputStream out = new FileOutputStream("slide-" + (i+1) + ".png");
javax.imageio.ImageIO.write(img, "png", out);
out.close();
}
在ppt文档中,我只需键入hello world,然后运行java程序,并成功生成png图像。但是我用ACDsee软件打开图像来查看图像,但是helloworld没有出现在png图像中。怎么了?这里有人能给我一些建议吗?你也可以自己测试看看结果,如果你得到了相同的结果,请告诉我。看来你根本没有对你的BuffereImage做任何事情。您只需用白色填充图像并将其保存到文件中。flafla2:您可以按照apache web上的说明进行测试:,请告诉我您的结果。