我需要逐页将docx文件转换为图片。因此,如果我将页码传递给方法 - 该方法应该从docx文件中读取该页面并将其转换为图像。使用Apache POI API的任何示例?我为pptx文件做了这个,但是无法为docx找到类似的方法。以下是pptx的代码。
FileInputStream is = new FileInputStream(strTempPath);
XMLSlideShow pptx = new XMLSlideShow(is);
is.close();
double zoom = 2; // magnify it by 2
AffineTransform at = new AffineTransform();
at.setToScale(zoom, zoom);
Dimension pgsize = pptx.getPageSize();
XSLFSlide[] slide = pptx.getSlides();
}
// BufferedImage img = new BufferedImage((int)Math.ceil(pgsize.width*zoom), (int)Math.ceil(pgsize.height*zoom), BufferedImage.TYPE_INT_RGB);
BufferedImage img = new BufferedImage(pgsize.width, pgsize.height, BufferedImage.TYPE_INT_RGB);
Graphics2D graphics = img.createGraphics();
//graphics.setTransform(at);
graphics.setPaint(Color.white);
graphics.fill(new Rectangle2D.Float(0, 0, pgsize.width, pgsize.height));
slide[iPageNo].draw(graphics);
// FileOutputStream output = new ByteArrayOutputStream("C:/Temp/aspose/word/slide-" + (10 + 1) + ".png");
output = new ByteArrayOutputStream();
javax.imageio.ImageIO.write(img, "png", output);
答案 0 :(得分:1)
与具有页面自然概念的演示文稿不同,WordML格式中没有这样的页面。
如果需要,可以使用应用程序来创建页面布局模型(这是Microsoft Word所做的)。
您可以使用FOP输出docx4j(您标记了您的问题),比如说PNG。