C# 复制幻灯片(包括格式、背景、图片等)到同/另一个PPT文档

简介: C# 复制幻灯片(包括格式、背景、图片等)到同/另一个PPT文档 复制幻灯片是使用PowerPoint过程中的一个比较常见的操作,在复制一张幻灯片时一般有以下两种情况: 在同一个PPT文档内复制 从一个PPT文档复制到另一个PPT文档 在微软 PowerPoint 中复制幻灯片很简单,只需要选中幻灯片,然后复制粘贴就可以了,但作为一名程序猿,我肯定需要用编程的方式来实现它。

C# 复制幻灯片(包括格式、背景、图片等)到同/另一个PPT文档

复制幻灯片是使用PowerPoint过程中的一个比较常见的操作,在复制一张幻灯片时一般有以下两种情况:

  • 在同一个PPT文档内复制
  • 从一个PPT文档复制到另一个PPT文档

在微软 PowerPoint 中复制幻灯片很简单,只需要选中幻灯片,然后复制粘贴就可以了,但作为一名程序猿,我肯定需要用编程的方式来实现它。下面就分享一下我是如何使用C#及免费PPT组件来实现在同一个PPT文档内复制幻灯片及从一个PPT文档里复制幻灯片到另一个PPT文档。

首先我准备了两个PPT文档(如下图),其中第一个PPT文档的幻灯片中含有文字,图片,背景色等内容:

                       

一、在同一个PPT文档内复制

将PPT文档的第一页复制到该PPT文档的第二页的位置:

using Spire.Presentation;

namespace 复制幻灯片
{
    class Program
    {
        static void Main(string[] args)
        {
            //加载PPT文档
            Presentation ppt = new Presentation();
            ppt.LoadFromFile("示例.pptx");

            //获取需要复制的幻灯片
            ISlide slide = ppt.Slides[0];

            //将该幻灯片复制/插入到指定位置
            int index = 1;
            ppt.Slides.Insert(index, slide);

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

运行结果:

 

二、从一个PPT文档复制到另一个PPT文档

这部分的代码与上一部分很相似,只需要加载另一个PPT文档即可。

using Spire.Presentation;
 
namespace 复制幻灯片
{
    class Program
    {
        static void Main(string[] args)
        {
            //加载第一个PPT文档
            Presentation ppt = new Presentation();
            ppt.LoadFromFile("示例.pptx");

            //获取需要复制的幻灯片
            ISlide slide = ppt.Slides[0];

            //加载另一个PPT文档
            Presentation ppt1 = new Presentation();
            ppt1.LoadFromFile("表格.pptx");

            //将幻灯片从第一个PPT文档复制到第二个PPT文档的指定位置           
            int index = 1;
            ppt1.Slides.Insert(index, slide);

            //保存文档           
            ppt1.SaveToFile("输出1.pptx", Spire.Presentation.FileFormat.Pptx2010);
            System.Diagnostics.Process.Start("输出1.pptx");
        }
    }
}

运行结果:

 

目录
相关文章
|
6月前
|
存储 传感器 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK修改图像像素格式Mono8或者Mono10(C#)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK修改图像像素格式Mono8或者Mono10(C#)
161 0
|
6月前
|
存储 监控 开发工具
Baumer工业相机堡盟工业相机如何联合NEOAPI SDK和OpenCV实现相机图像转换为AVI视频格式(C#)
Baumer工业相机堡盟工业相机如何联合NEOAPI SDK和OpenCV实现相机图像转换为AVI视频格式(C#)
69 0
|
2月前
|
数据采集 JavaScript C#
C#图像爬虫实战:从Walmart网站下载图片
C#图像爬虫实战:从Walmart网站下载图片
|
24天前
|
XML C# 开发工具
C# 删除Word文档中的段落
【11月更文挑战第3天】本文介绍了两种方法来操作 Word 文档:一是使用 `Microsoft.Office.Interop.Word` 库,适用于 Windows 环境下操作 Word 文档,需引用相应库并在代码中引入命名空间;二是使用 Open XML SDK,适用于处理 .docx 格式的文档,通过引用 `DocumentFormat.OpenXml` 库实现。文中提供了示例代码,展示了如何打开、删除段落并保存文档。
|
1月前
|
XML JSON 前端开发
C#使用HttpClient四种请求数据格式:json、表单数据、文件上传、xml格式
C#使用HttpClient四种请求数据格式:json、表单数据、文件上传、xml格式
387 0
|
6月前
|
存储 算法 C#
C# 生成指定图片的缩略图
C# 生成指定图片的缩略图
|
6月前
|
C# 开发工具 数据安全/隐私保护
C# 给图片添加文字水印
C# 给图片添加文字水印
|
6月前
|
开发框架 .NET C#
C# 自动填充文字内容到指定图片
C# 自动填充文字内容到指定图片
|
6月前
|
XML 存储 C#
C# xml文档反序列化记事
本文介绍了使用XmlSerializer进行XML序列化和反序列化的关键点。包括:1) 以独占方式读取XML文件以避免并发问题;2) 当元素名与类型名不一致时,可通过`[XmlArrayItem]`指定元素名,或创建继承自原始类型的子类;3) 处理DateTime反序列化错误,通过中间字符串属性转换;4) 提到了常用C#特性如`[XmlRoot]`, `[XmlElement]`, `[XmlAttribute]`, `[XmlIgnore]`和`[XmlArrayItem]`的作用。