Java 转PPT为图片、PDF、SVG、XPS、ODP以及PPT和PPTX互转
同一文档,在不同的文档查看器或者编译环境中,需要对该文档进行相应的格式转换。下面的内容中,将介绍通过Java编程来实现PPT文档格式转换的方法。
使用工具:
- Spire.Presentation for Java
- IntelliJ IDEA
Jar文件获取及导入:
方法1:通过官网获取jar文件包。下载文件后,解压,并将lib文件夹下的Spire.Presentation.jar文件导入IDEA程序。
方法2:通过maven仓库安装导入。
Java代码示例(供参考)
【示例1】PPT转为图片
import com.spire.presentation.*; import javax.imageio.ImageIO; import java.awt.image.BufferedImage; import java.io.File; public class PPTtoPNG { public static void main(String[] args) throws Exception{ //创建Presentation对象 Presentation ppt = new Presentation(); //加载示例文档 ppt.loadFromFile("sample.pptx"); //遍历幻灯片 for (int i = 0; i < ppt.getSlides().getCount(); i++) { //将幻灯片保存为BufferedImage对象 BufferedImage image = ppt.getSlides().get(i).saveAsImage(); //将BufferedImage保存为PNG格式文件 String fileName = String.format("ToImage.png", i); ImageIO.write(image, "PNG",new File(fileName)); } ppt.dispose(); } }
PPT转图片效果:
【示例2】PPT转为PDF
import com.spire.presentation.FileFormat; import com.spire.presentation.Presentation; public class PPTtoPDF { public static void main(String[] args) throws Exception{ //创建Presentation对象 Presentation ppt = new Presentation(); //加载示例文档 ppt.loadFromFile("sample.pptx"); //保存为PDF文档 ppt.saveToFile("ToPDF.pdf", FileFormat.PDF); ppt.dispose(); } }
PPT转PDF效果:
【示例3】PPT转为SVG
import com.spire.presentation.*; import java.io.FileOutputStream; import java.util.ArrayList; public class PPTtoSVG { public static void main(String[] args) throws Exception{ //创建Presentation对象 Presentation ppt = new Presentation(); //加载示例文档 ppt.loadFromFile("sample.pptx"); //将PowerPoint文档转换为SVG格式,并以byte数组的形式保存于ArrayList ArrayList<byte[]> svgBytes =(ArrayList<byte[]>) ppt.saveToSVG(); //遍历ArrayList中的byte数组 for (int i = 0; i < svgBytes.size(); i++) { //将byte数组保存为SVG格式文件 byte[] bytes = svgBytes.get(i); FileOutputStream stream = new FileOutputStream(String.format("ToSVG.svg", i)); stream.write(bytes); } ppt.dispose(); } }
PPT转SVG效果:
【示例4】PPT转为XPS
import com.spire.presentation.*; public class PPTtoXPS { public static void main(String[] args) throws Exception{ //加载测试文档 Presentation ppt = new Presentation(); ppt.loadFromFile("sample.pptx"); //保存为XPS ppt.saveToFile("ToXPS.xps",FileFormat.XPS); ppt.dispose(); } }
PPT转XPS效果:
【示例5】PPT转为ODP
import com.spire.presentation.*; public class PPTtoODP { public static void main(String[] args) throws Exception { //加载测试文档 Presentation ppt = new Presentation(); ppt.loadFromFile("sample.pptx"); //保存为ODP ppt.saveToFile("ToODP.odp",FileFormat.ODP); } }
【示例6】PPT和PPTX互转
import com.spire.presentation.*; public class PPTXtoPPT { public static void main( String[] args) throws Exception{ //创建Presentation对象 Presentation ppt = new Presentation(); //加载PPTX文档 ppt.loadFromFile("sample.pptx"); //保存为PPT ppt.saveToFile("ToPPT.ppt", FileFormat.PPT); //PPT转为PPTX //ppt.loadFromFile("sample.ppt"); //ppt.saveToFile("ToPPTX.pptx",FileFormat.PPTX_2013); ppt.dispose(); } }
(本文完)
转载请注明出处!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 上周热点回顾(2.17-2.23)
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)