wcs5639187945 2013-07-25 01:51 采纳率: 0%
浏览 1207

java如何讲mht非标准格式的ppt文件转化成标准格式的ppt

最近要做一个根据ppt模版来生成ppt的东西,
在网上百度已一番没找到

不过看到一个根据word模版来生成word的解决方案有所启发,觉得亦可以用在ppt上

就是先用powerpoint打开ppt模版,另存为mht格式的文件,然后用freemarker来替换要显示的部分,这样只要修改后缀名就可以了,这个可以在各类office软件打开,
可是不支持之前做的在线浏览ppt功能,请问各位大神有没有什么工具能讲mht格式的ppt文件转化成标准格式啊

  • 写回答

1条回答

  • ChatGPTᴼᴾᴱᴺᴬᴵ 2023-01-09 13:21
    关注

    在 Java 中,您可以使用 Apache POI 库将 MHT 格式的 PPT 转换为标准格式的 PPT。Apache POI 是一个开源的 Java 库,用于读写 Microsoft Office 文档。下面是一个示例代码,展示了如何使用 Apache POI 将 MHT 格式的 PPT 转换为标准格式的 PPT。


    首先,您需要将 Apache POI 库添加到您的项目中。您可以使用以下 Maven 依赖来添加 Apache POI 库:

    <dependency>
       <groupId>org.apache.poi</groupId>
       <artifactId>poi</artifactId>
       <version>4.1.2</version>
    </dependency>
    

    然后,您可以使用以下代码将 MHT 格式的 PPT 转换为标准格式的 PPT:

    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    
    import org.apache.poi.hslf.usermodel.HSLFSlideShow;
    import org.apache.poi.hslf.usermodel.HSLFSlideShowImpl;
    import org.apache.poi.hwpf.HWPFDocument;
    import org.apache.poi.hwpf.converter.PicturesManager;
    import org.apache.poi.hwpf.converter.WordToHtmlConverter;
    import org.apache.poi.hwpf.usermodel.PictureType;
    import org.w3c.dom.Document;
    
    public class MHTToPPTConverter {
        public static void main(String[] args) throws Exception {
            // 创建输入流,用于读取 MHT 格式的 PPT 文件
            FileInputStream inputStream = new FileInputStream(new File("input.mht"));
    
            // 创建 HSLF 滑动展示,用于读取 MHT 格式的 PPT
            HSLFSlideShow slideShow = new HSLFSlideShow(inputStream);
    
            // 创建输出流,用于写入标准格式的 PPT 文件
            FileOutputStream outputStream = new FileOutputStream(new File("output.ppt"));
    
            // 将 HSLF 滑动展示写入输出流
            slideShow.write(outputStream);
    
            // 关闭输入流和输出流
            inputStream.close();
            outputStream.close();
        }
    }
    

    该代码首先创建了一个输入流,用于读取 MHT 格式的 PPT 文件。然后,它创建了一个 HSLF 滑动展示,用于读取 MHT 格式的 PPT。接下来,它创建了一个输出流,用于写入标准格式的 PPT 文件。最后,它使用 write() 方法将 HSLF 滑动展示写入输出流,并关闭输入流和输出流。

    评论

报告相同问题?

悬赏问题

  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况
  • ¥15 画两个图 python或R
  • ¥15 在线请求openmv与pixhawk 实现实时目标跟踪的具体通讯方法
  • ¥15 八路抢答器设计出现故障
  • ¥15 opencv 无法读取视频
  • ¥15 按键修改电子时钟,C51单片机
  • ¥60 Java中实现如何实现张量类,并用于图像处理(不运用其他科学计算库和图像处理库))
  • ¥20 5037端口被adb自己占了
  • ¥15 python:excel数据写入多个对应word文档