SVG文件即可缩放的矢量图形(Scalable Vector Graphics)。该文件格式可以用任何文字处理工具打开SVG图像,常见的,可以通过浏览器来查看。要获得SVG格式的文件,可以通过文件转换的方式,将既有的文件直接另存为该格式即可。本文,以Java后端代码的方式来展示如何将PPT幻灯片文件转为SVG文件。
将分别从以下两种情况来转换:
将PPT幻灯片每页单独转换为一个SVG文件
将PPT幻灯片所有页面转换为一个SVG文件
本文介绍的方法为是将整个PPT幻灯片转换成一个SVG文件。下面是详细的转换方法及代码。
—————————————————————————————————————————————————
【引入Jar】
方法1:获取jar包,保存到本地路径。解压,找到lib文件夹下Spire.Presentation.jar文件。然后在IDEA中打开如下界面手动该jar文件引入程序:
方法2:maven仓库下载引入,可以参考如下pom.xml配置:
<repositories>
<repository>
<id>com.e-iceblue</id>
<url>https://repo.e-iceblue.cn/repository/maven-public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId> e-iceblue </groupId>
<artifactId>spire.presentation</artifactId>
<version>7.8.2</version>
</dependency>
</dependencies>
—————————————————————————————————————————————
【PPT转为 SVG】
1. 将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();
}
}
2.将PPT幻灯片所有页面转换为一个SVG文件
import com.spire.presentation.*;
public class PPTtoOneSVG {
public static void main(String[] args) throws Exception{
//创建Presentation类的对象
Presentation ppt = new Presentation();
//调用方法加载PPT幻灯片文件
ppt.loadFromFile("test.pptx");
//调用方法将PPT幻灯片转换为一个SVG文件,并以byte数组的形式保存
byte[] bytes = ppt.saveToOneSVG();
//将byte数组保存为SVG格式文件
try(java.io.FileOutputStream stream = new java.io.FileOutputStream("toOneSvg.svg"))
{
stream.write(bytes);
}
}
}
—END—