Java 转PPT为图片、PDF、SVG、XPS、ODP以及PPT和PPTX互转

时间:2024-01-24 21:43:58

同一文档,在不同的文档查看器或者编译环境中,需要对该文档进行相应的格式转换。下面的内容中,将介绍通过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转图片效果:



【示例2PPT转为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效果:

 

【示例3PPT转为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效果:

 

【示例4PPT转为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效果:

 

【示例5PPT转为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);
    }
}

 

【示例6PPTPPTX互转

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();
    }
}

 

(本文完)

转载请注明出处!