3
안녕하세요 Apache Poi 프레임 워크를 사용하여 ppt의 각 슬라이드를 개별 PNG로 변환하려고합니다. 문제는 일부 슬라이드가 변형 된 것입니다. 예를 들어 배경에 무지개색이있는 슬라이드가 있습니다. 우리가 사용하지 않아도 작동이 들어Apache poi를 사용하여 ppt를 png로 변환
FileInputStream is = new FileInputStream(args[0]);
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("C:\\Users\\Farzad\\Desktop\\slide-" + (i+1) + ".png");
javax.imageio.ImageIO.write(img, "png", out);
out.close();
}
이 변화'BufferedImage.TYPE_INT_RGB'의 품질을 개선하는 것이 될 수 있을까요? – Wivani
어떤 POI 버전을 사용하고 계십니까? PPT 렌더링은 시간이 지남에 따라 개선되는 것입니다. 따라서 최신 버전을 사용해 보지 않은 경우 – Gagravarr
을 업그레이드 할 가치가 있습니다. 위의 코드를 실행하기 위해 어떤 병이 포함되는지 알려줄 것입니다. Coz Dimension, Graphics2D 클래스를 얻지 못하고 있습니다. – Panache