poi 读取 ppt,并将内容转换成图片
来源:互联网 发布:arm控制器和单片机 编辑:程序博客网 时间:2024/05/18 01:49
package com.test;import java.awt.Dimension;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.awt.Color;import java.awt.Graphics2D;import java.awt.geom.Rectangle2D;import java.awt.image.BufferedImage;import org.apache.poi.hslf.model.TextRun;import org.apache.poi.hslf.usermodel.RichTextRun;import org.apache.poi.hslf.usermodel.SlideShow;public class PptReader { public static void main(String[] args) { // 读入PPT文件 File file = new File("F:/20110618.ppt"); doPPTtoImage(file); } public static boolean doPPTtoImage(File file) { boolean isppt = checkFile(file); if (!isppt) { System.out.println("你指定的文件不是ppt文档!"); return false; } try { FileInputStream is = new FileInputStream(file); SlideShow ppt = new SlideShow(is); is.close(); Dimension pgsize = ppt.getPageSize(); org.apache.poi.hslf.model.Slide[] slide = ppt.getSlides(); for (int i = 0; i < slide.length; i++) { System.out.print("第" + i + "页。"); if(slide[i].getNotesSheet()!=null&&slide[i].getNotesSheet().getTextRuns()!=null){ //获取第一个备注 System.out.println("备注:" + slide[i].getNotesSheet().getTextRuns()[0].getText()); } TextRun[] truns = slide[i].getTextRuns(); for (int k = 0; k < truns.length; k++) { RichTextRun[] rtruns = truns[k].getRichTextRuns(); for (int l = 0; l < rtruns.length; l++) { rtruns[l].setFontIndex(1); rtruns[l].setFontName("宋体"); // 获取文本列表 System.out.println(rtruns[l].getText()); } } BufferedImage img = new BufferedImage(pgsize.width, pgsize.height, BufferedImage.TYPE_INT_RGB); Graphics2D graphics = img.createGraphics(); graphics.setPaint(Color.white); graphics.fill(new Rectangle2D.Float(0, 0, pgsize.width, pgsize.height)); slide[i].draw(graphics); // 这里设置图片的存放路径和图片的格式(jpeg,png,bmp等等),注意生成文件路径 FileOutputStream out = new FileOutputStream("F:/ppttest/pict_" + (i + 1) + ".jpeg"); javax.imageio.ImageIO.write(img, "jpeg", out); out.close(); } System.out.println("ok"); return true; } catch (FileNotFoundException e) { System.out.println(e); } catch (IOException e) { e.printStackTrace(); } return false; } // function 检查文件是否为PPT public static boolean checkFile(File file) { boolean isppt = false; String filename = file.getName(); String suffixname = null; if (filename != null && filename.indexOf(".") != -1) { suffixname = filename.substring(filename.indexOf(".")); if (suffixname.equals(".ppt")) { isppt = true; } return isppt; } else { return isppt; } }}
需要的jar包: poi.jar和poi-scratchpad.jar
转自:http://yijianfengvip.blog.163.com/blog/static/175273432201152311960/
- poi 读取 ppt,并将内容转换成图片
- 利用POI将PPT转换为图片
- 利用MsOffice将PPT转换成图片
- JAVA读取并将图片转换成String
- Java 使用最新POI Lib 将Excel转换成Txt读取Excel内容工具类
- java中读取properties文件,并将文件内容转换成map并返回
- java 使用poi将PPT转为图片,在线预览PPT
- 读取PPT内容并写入txt
- 将PPT内容导出为JPG图片
- poi读取模板并修改模板内容
- 将word、excel、ppt、html、txt转换成图片
- POI读取ppt
- 将PPT文件内容转换为图片放在Email邮件正文中发送
- java poi 将word转成html,ppt转成图片
- POI读取EXCEL,转换HTML,图片,附件
- poi读取doc、ppt、pptx、xsl、xslx文件的内容,pdfbox读取pdf内容,读取txt文件内容
- 使用Apache POI读取Excel文件,将读取的数据转换成json写入文本文件
- 如何读取ppt内容
- 让Eclipse识别MyEclipse的Web项目
- 你是否正带着眼镜观察员工或老板?
- 蒙特霍尔问题:转不过来弯的概率
- 软件质量有什么特性?
- 喜悦
- poi 读取 ppt,并将内容转换成图片
- poj1207
- css自定义滚动条样式-不支持FF
- java中没有运算符重载
- Android资源图片内存占用及优化
- Getting things done(搞定)思维导图
- MATLAB的MEX文件编写和调试
- DIV+CSS解决IE6,IE7,IE8,FF兼容问题
- 页面刷新文本框的值回不到默认值解决方案