`

Java 合并、拆分PPT幻灯片

阅读更多

本文将介绍在Java程序中如何来合并及拆分PPT文档的方法。示例大纲:

1. 合并

1.1 将指定幻灯片合并到文档

1.2 合并多个幻灯片文档为一个文档

2. 拆分

2.1 按幻灯片每一页单独拆分为一个文档

2.2 按指定幻灯片页数范围来拆分为多个文档

使用工具Free Spire.Presentation for Java (免费版)

获取方法及jar文件导入:

 

方法1通过官网下载。下载后,解压文件。将lib文件下的Spire.Presentation.jar文件导入java程序即可。如下导入效果:


 方法2通过maven导入,参考导入方法

两个PPT测试文档如下:


 

1. 合并

 

 1.1 将指定幻灯片合并到文档

import com.spire.presentation.*;

public class MergeFiles1 {
    public static void main(String[] args) throws Exception{
        //加载文档1,获取第三张幻灯片
        Presentation ppt1 = new Presentation();
        ppt1.loadFromFile("test1.pptx");
        ISlide slide = ppt1.getSlides().get(2);

        //加载文档2,将文档1中获取的幻灯片作为第二张插入到文档2
        Presentation ppt2 = new Presentation();
        ppt2.loadFromFile("test2.pptx");
        int index = 1;
        ppt2.getSlides().insert(index,slide);

        //保存文档2
        ppt2.saveToFile("merge1.pptx",FileFormat.PPTX_2013);
        ppt2.dispose();
    }
}

 合并效果:


 

1.2 合并多个幻灯片为一个文档

import com.spire.presentation.*;

public class MergeFiles2 {
    public static void main(String[] args)throws  Exception {
        //加载文档1,文档2
        Presentation ppt1 = new Presentation();
        ppt1.loadFromFile("test1.pptx");
        Presentation ppt2 = new Presentation();
        ppt2.loadFromFile("test2.pptx");

        //遍历文档1的所有幻灯片,添加到文档2
        for(int i = 0;i<ppt1.getSlides().getCount();i++){
            ppt2.getSlides().append(ppt1.getSlides().get(i));
        }

        //保存文档2
        ppt2.saveToFile("merge2.pptx",FileFormat.PPTX_2013);
        ppt2.dispose();
    }
}

 合并效果:


 

2. 拆分

 2.1 按幻灯片每一页来拆分

import com.spire.presentation.*;

public class Split1 {
    public static void main(String[] args)throws Exception {
        //加载测试文档1
        Presentation ppt1 = new Presentation();
        ppt1.loadFromFile("test1.pptx");

        //遍历文档1
        for (int i = 0; i < ppt1.getSlides().getCount(); i++) {
            //新建一个PPT文档,并移除默认生成的第一页幻灯片
            Presentation newppt = new Presentation();
            newppt.getSlides().removeAt(0);
            //将每一页添加到新建的文档,并保存
            newppt.getSlides().append(ppt1.getSlides().get(i));
            newppt.saveToFile(String.format("单页拆分-%1$s.pptx", i), FileFormat.PPTX_2013);
        }
    }
}

 拆分结果:


 

 2.2 按指定幻灯片页数范围来拆分

import com.spire.presentation.*;

public class Split2 {
    public static void main(String[] args) throws Exception{
        //加载文档1
        Presentation ppt1 = new Presentation();
        ppt1.loadFromFile("test1.pptx");

        //新建文档1,移除默认生成的第一页幻灯片
        Presentation newppt1 = new Presentation();
        newppt1.getSlides().removeAt(0);
        //将文档1中的第一、二页添加到新建的文档1,并保存
        for (int i = 0; i < 2; i++)
        {
            newppt1.getSlides().append(ppt1.getSlides().get(i));
        }
        newppt1.saveToFile(String.format("拆分1.pptx"), FileFormat.PPTX_2013);

        //新建文档2,移除默认生成的第一页幻灯片
        Presentation newppt2 = new Presentation();
        newppt2.getSlides().removeAt(0);
//将文档2中的第三、四页添加到新建的文档2,并保存
        for(int j = 2;j < 4;j++){
            newppt2.getSlides().append(ppt1.getSlides().get(j));
        }
        newppt2.saveToFile(String.format("拆分2.pptx"), FileFormat.PPTX_2013);
    }
}

 拆分结果:


 

(本文完)

 

  • 大小: 29.2 KB
  • 大小: 98.5 KB
  • 大小: 131.2 KB
  • 大小: 113.5 KB
  • 大小: 69.8 KB
  • 大小: 79.1 KB
0
0
分享到:
评论

相关推荐

    POI操作PPT文档(导入,导出,读取,添加,拼接,替换文本,页面排序)

    使用POI可以读取PPT文档的内容,例如读取幻灯片的数量和每个幻灯片的内容: ```java List&lt;XSLFSlide&gt; slides = ppt.getSlides(); for (XSLFSlide slide : slides) { // 读取幻灯片的内容 } ``` ### 3. 添加幻灯片 ...

    Aspose.Slides

    8. 合并与拆分:合并多个PPT文件为一个,或者将一个PPT文件拆分为多个独立的幻灯片。 9. 数据导入导出:可以将幻灯片中的数据导入或导出到CSV、Excel等格式,便于数据分析。 10. 安全性:设置密码保护和权限控制,...

    spire.office for java.zip

    你可以添加幻灯片,插入文本、图片、形状、动画,以及应用主题模板。此外,库中的API还支持将PowerPoint演示文稿转换为PDF、HTML5或其他图像格式,以满足不同场合的展示需求。 PDF文档处理是Spire.Office for Java...

    aspose 汇总下载(内含 19.6 以及 20.4)

    - **合并与分割幻灯片**:合并多个演示文稿为一个,或者将一个演示文稿拆分成多个。 - **添加动画和交互**:创建动态幻灯片,设置对象的进入、退出、强调和路径动画。 - **编程控制**:通过编程方式控制幻灯片的播放...

    POI最新所有jar包

    开发者可以通过它们来创建幻灯片、文本框、图片、动画效果等。 4. **ddf**:这个模块负责处理Excel中的旧式电子表格图例,比如饼图、柱状图等。 5. **ooxml-schemas**:包含了Open XML格式的定义,是POI处理...

    dev-app-apache-poi:库apache-poi示例

    - 支持合并和拆分多个文档。 - 处理Excel图表和公式。 通过这些示例,开发者可以学习如何在实际项目中使用Apache POI库,从而更有效地管理和操作Office文档。无论是在数据分析、报表生成还是自动化办公场景中,...

Global site tag (gtag.js) - Google Analytics