`

C# 合并、拆分PPT幻灯片

阅读更多

概述

通过合并、拆分的功能,将不同的文档中的幻灯片进行组合形成新的文档,同时也可以将一个多页的PPT文档按页拆分成多个不同的文档。此功能也丰富了编程人员对PPT幻灯片的操作的选择。下面将分别从以下几个要点来分别阐述通过C#来合并、拆分PPT幻灯片的方法。

 

示例要点

1. 合并PPT幻灯片(2种方式)

 方式1加载多个独立的PowerPoint文件,同时将两个文档的数据合并后为一个新的PPT文件

 方式2将第1个幻灯片中指定的幻灯片数据,写入到第2个幻灯片,并保存为新的PPT文件

2. 拆分PPT幻灯片

  2.1 按每一页拆分

  2.2 按指定拆分页数

 

工具

注:下载安装该控件后,注意在程序中添加引用Sprie.Presentation.dll(如下图)。dll可在安装路径下的Bin文件夹中获取。


 

代码示例(供参考)

【示例1】合并PPT幻灯片(方式1) 

using Spire.Presentation;

namespace MergeSlides_PPT
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建新的Presentation示例并删除默认的空白幻灯片
            Presentation ppt = new Presentation();
            ppt.Slides.RemoveAt(0);

            //加载需要合并的两个幻灯片文档
            Presentation ppt1 = new Presentation("test1.pptx", FileFormat.Pptx2010);
            Presentation ppt2 = new Presentation("test2.pptx", FileFormat.Pptx2010);

            //插入ppt1的数据
            for (int i = 0; i < ppt1.Slides.Count; i++)
            {
                ppt.Slides.Append(ppt1.Slides[i]);
            }

            //插入ppt2中的第一张幻灯片数据
            ppt.Slides.Append(ppt2.Slides[0]);

            //保存ppt文档
            ppt.SaveToFile("result.pptx", FileFormat.Pptx2010);
            System.Diagnostics.Process.Start("result.pptx");
        }
    }
}

 完成代码后,调试程序,生成文档。PPT文档合并效果如下:

 

 

合并前:



 

合并后:


 

【示例2】合并PPT幻灯片(方式2)

 

using Spire.Presentation;

namespace MergeSlides2_PPT
{
    class Program
    {
        static void Main(string[] args)
        {
            //实例化Presentation类的对象,并加载幻灯片文档
            Presentation ppt1 = new Presentation("test1.pptx", FileFormat.Pptx2010);
            //获取第一张幻灯片
            ISlide slide = ppt1.Slides[0];

            //加载第二个PowerPoint示例文档
            Presentation ppt2 = new Presentation();
            ppt2.LoadFromFile("test2.pptx", FileFormat.Pptx2010);

            //将ppt1中获取的第一个幻灯片数据插入到ppt2,并设置为第一页
            int index = 0;
            ppt2.Slides.Insert(index, slide);

            //保存文档2
            ppt2.SaveToFile("Merge2.pptx", FileFormat.Pptx2010);
            System.Diagnostics.Process.Start("Merge2.pptx");
        }
    }
}

 

 

合并前:


 

 合并后:

 

 

【示例3】按PPT每一页拆分

 

using Spire.Presentation;
using System;

namespace SplitSlides_PPT
{
    class Program
    {
        static void Main(string[] args)
        {
            //实例化Presentation类的对象,并加载测试文档
            Presentation ppt = new Presentation();
            ppt.LoadFromFile("test.pptx");

            //遍历文档中的所有幻灯片
            for (int i = 0; i < ppt.Slides.Count; i++)
            {      
                Presentation newppt = new Presentation();//创建一个新的PPT文档
                newppt.Slides.RemoveAt(0);//删除新建文档中默认的第一张幻灯片
                newppt.Slides.Append(ppt.Slides[i]);//将ppt中的幻灯片按每一页添加到newppt中
                newppt.SaveToFile(String.Format("拆分{0}.pptx", i), FileFormat.Pptx2010);//保存newppt文档
            }
        }
    }
}

 

 

拆分前:


 

拆分后:

 


 

【示例4】按PPT指定页数范围拆分

using Spire.Presentation;
using System;

namespace SplitSlides2_PPT
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建文档ppt加载需要拆分的文档
            Presentation ppt = new Presentation();
            ppt.LoadFromFile("test.pptx");

            //将文档的1-2页拆分,保存为文档1
            Presentation ppt1 = new Presentation();
            ppt1.Slides.RemoveAt(0);
            for (int i = 0; i < 2; i++)
            {
                ppt1.Slides.Append(ppt.Slides[i]);
            }
            ppt1.SaveToFile(String.Format("Split1.pptx"), FileFormat.Pptx2010);


            //将文档的3-4页拆分,保存为文档2
            Presentation ppt2 = new Presentation();
            ppt2.Slides.RemoveAt(0);
           for (int i = 2; i < 4; i++)
            {
                ppt2.Slides.Append(ppt.Slides[i]);
            }
            ppt2.SaveToFile(String.Format("Split2.pptx"), FileFormat.Pptx2010);


            //将文档第5页拆分,保存为文档3
            Presentation ppt3 = new Presentation();
            ppt3.Slides.RemoveAt(0);
            ppt3.Slides.Append(ppt.Slides[4]);
            ppt3.SaveToFile(String.Format("Split3.pptx"), FileFormat.Pptx2010);
        }
    }
}

 

拆分前:

 


 

拆分后:



 

以上是C# 合并、拆分PPT幻灯片的全部内容。

 

(本文完)

 

  • 大小: 22.1 KB
  • 大小: 182.6 KB
  • 大小: 157.9 KB
  • 大小: 178.8 KB
  • 大小: 144.1 KB
  • 大小: 96.9 KB
  • 大小: 93.7 KB
  • 大小: 91.7 KB
  • 大小: 108.3 KB
0
0
分享到:
评论

相关推荐

    C#合并powerpoint文件

    2. **获取幻灯片**:在每个源文件中,幻灯片都存储在`/ppt/slides`目录下的`slide{slideId}.xml`文件中。我们可以遍历这些文件,提取出每张幻灯片的内容。 3. **创建目标文件包**:为合并后的文件创建一个新的包,...

    C#自动播放PPT

    在C#中,我们可以通过COM对象来创建和控制PowerPoint实例,如打开PPT文件、设置幻灯片的播放速度、自动播放等。 以下是实现C#自动播放PPT的关键步骤: 1. 引用Microsoft.Office.Interop.PowerPoint库:在项目中...

    c# PDF拆分合并工具源码

    标题中的“C# PDF拆分合并工具源码”指的是一个基于C#编程语言开发的软件,主要用于处理PDF文档,能够实现PDF文件的合并与拆分功能。这种工具在日常工作中非常实用,尤其对于需要处理大量PDF文档的用户,能够极大地...

    C#遥控PPT幻灯片

    本教程将聚焦于如何利用C#与Visual Studio 2010(VS2010)来实现对PowerPoint(PPT)幻灯片的远程控制,包括翻页功能,即上一页和下一页的切换。这样的功能对于演示文稿的自动化和远程操作非常有用,例如在线会议或...

    C# 课件 ppt 幻灯片.rar

    此"C#课件ppt幻灯片"压缩包文件显然是为教学或自我学习C#语言设计的一套教程资源。下面将详细阐述C#语言的关键知识点。 1. **基础语法**: C#的基础包括变量、数据类型、常量、运算符、流程控制语句(如if-else,for...

    C#图片循环幻灯片播放

    在本文中,我们将深入探讨如何使用C# WinForms来创建一个循环的图片幻灯片播放器。这个项目是在Visual Studio 2013环境下构建的,主要涉及C#编程语言和图片处理。我们将在Pic文件夹中存放图片,并且允许用户根据需求...

    C# 生成ppt PPt C# 生成ppt PPt

    根据给定的信息,本文将详细解释如何使用C#来生成PPT文档,主要涉及创建文本、图片、多媒体对象以及Flash对象等内容。 ### C# 生成 PPT 的基本原理 在.NET框架下,C#可以通过调用Microsoft Office Interop库来操作...

    C#WinForm幻灯片

    在本文中,我们将深入探讨如何使用C# WinForm来创建一个具有动态图片播放效果的幻灯片程序。这个程序利用了Windows API来实现各种图片显示特效,如从左向右、从右向左以及从中间向四周的过渡效果。下面我们将详细...

    C# winform 图片幻灯片方式切换

    在本文中,我们将深入探讨如何使用C# WinForm来实现图片的幻灯片方式切换,这对于产品展示或任何需要连续显示图像的场景都非常有用。C# WinForm是.NET Framework的一部分,提供了一个强大的平台来创建桌面应用程序,...

    OpenXmlSDK2.0向PowerPoint2010中插入新幻灯片

    例如,要插入新幻灯片,我们需要操作`ppt/presentation.xml`来添加新的幻灯片引用,同时还要在`ppt/slides`目录下创建一个新的XML文件来定义幻灯片的具体内容。 以下是使用OpenXmlSDK2.0插入新幻灯片的基本步骤: ...

    C#拆分和合并文件例程

    以下将详细阐述C#中实现文件拆分和合并的基本原理及步骤。 1. **文件拆分** 文件拆分是指将一个大文件分割成多个小文件,以便于存储、传输或处理。在C#中,可以使用`FileStream`类来读取文件,并通过循环逐块写入...

    c# 操作 PPT,动态生成PPT

    总的来说,C#操作PPT涉及的主要知识点包括:使用Interop库与PowerPoint交互、幻灯片和内容的创建与编辑、文本和图片的插入、动画和过渡效果的设置,以及模板的利用。在实际开发中,根据需求可以进行更复杂的定制和...

    C#程序设计PPT

    C#程序设计PPT 传智播客知识产权C#程序设计PPT 传智播客知识产权C#程序设计PPT 传智播客知识产权C#程序设计PPT 传智播客知识产权C#程序设计PPT 传智播客知识产权C#程序设计PPT 传智播客知识产权

    如何使用C#操作幻灯片

    在本文中,我们将探讨如何使用C#编程语言来操作PowerPoint幻灯片,实现类似遥控翻页的效果。首先,我们需要了解C#与Office Interop组件的交互,这使得我们可以访问和控制Office应用程序,如PowerPoint。 1. **获取...

    C#生成PPT的2种方法

    在.NET框架中,C#程序员可以使用不同的库和方法来创建和编辑PowerPoint(PPT)文件。本文将深入探讨两种常见的C#生成PPT的方法,以帮助开发者更好地理解和实现这个功能。 首先,我们来看第一种方法:使用Microsoft ...

    C#处理 Excel合并、拆分

    在本项目中,我们将探讨如何使用C#来实现Excel文件的合并与拆分,这是一个常见的需求,特别是在数据处理和报告生成中。Visual Studio 2008作为开发工具,提供了丰富的库和API来支持这种操作。 首先,我们需要理解...

    C# 最全面图片浏览器,幻灯片,截屏,格式转换,拼图

    本项目名为"C#最全面图片浏览器",它涵盖了多个功能模块,包括图片浏览、幻灯片展示、屏幕截图、图像格式转换以及拼图游戏等。下面我们将详细探讨这些知识点。 1. **C#编程**:C#是微软开发的一种面向对象的编程...

    c#自动播放PPT

    这个命名空间允许我们在C#代码中直接控制PowerPoint应用,包括打开PPT文件、设置幻灯片的播放选项以及自动播放。 1. **引入必要的引用**: 在项目中,你需要添加对Microsoft.Office.Interop.PowerPoint的引用。这...

    WPF自动播放幻灯片

    在标题“WPF自动播放幻灯片”中,我们关注的是一个特定的功能,即如何在WPF应用中实现一个自动播放的幻灯片展示。这种功能常见于演示文稿、教学软件或者任何需要连续展示多个图像或内容的场景。 **WPF基础** WPF是...

    C#拆分PDF(iText)

    在这个主题中,“C#拆分PDF(iText)”涉及到如何利用C#和iText库将一个PDF文档拆分为多个小文件,并根据特定规则(如Excel指定的规则)进行重命名。 首先,我们需要理解PDF拆分的基本概念。PDF(Portable Document ...

Global site tag (gtag.js) - Google Analytics