Java 将 PPT 形状(表格、文本框、心形、图表等)保存成图片

MS PowerPoint中的表格、文本框、心形、图表、图片等均可以称为形状,将这些形状保存成图片,便可分类储存,方便日后查找,再利用。

本文将介绍如何使用 Spire.Presentation for Java,在Java程序中将 PPT 形状(表格、文本框、心形、图片等)保存成图片。

工具**/**原料

Jar****文件获取及导入

方法1**:**先从官网下载jar包

导入步骤:

下载后,解压文件,并将lib文件夹下的Spire.Presentation.jar文件导入java程序。参考如下导入效果:

方法2**:**可通过maven仓库安装导入。

Java****代码示例:

1import com.spire.presentation.Presentation; 2 3import javax.imageio.ImageIO; 4import java.awt.image.BufferedImage; 5import java.io.File; 6 7public class saveimage { 8 public static void main(String[] args) throws Exception { 9 String inputFile = "C:\\Users\\Test1\\Desktop\\测试文档.pptx"; 10 String outputPath = "output/"; 11 //创建实例 12 Presentation ppt = new Presentation(); 13 //加载文件 14 ppt.loadFromFile(inputFile); 15 for (int i = 0; i < ppt.getSlides().get(0).getShapes().getCount(); i++) 16 { 17 String fileName = outputPath + String.format("shapeToImage-%1$s.png", i); 18 //将shape保存为image对象 19 BufferedImage image = ppt.getSlides().get(0).getShapes().saveAsImage(i); 20 //写出图片 21 ImageIO.write(image, "PNG", new File(fileName)); 22 } 23 } 24}

保存前后效果如下:

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )