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


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

    运行结果:

  • 相关阅读:
    C# Bitmap类型与Byte[]类型相互转化
    我所理解的JavaScript闭包
    从零开始编写自己的C#框架 ---- 系列文章
    巧用Windows 7计划任务设置定时提醒
    vba中MsgBox的参数及用法
    SQL行转列和列转行
    web应用程序 ---- 日志系统的设计
    《代码整洁之道》读书笔记
    使用Excel制作万年历(日历可A4纸打印)
    C#窗体全屏功能
  • 原文地址:https://www.cnblogs.com/Yesi/p/5643985.html
Copyright © 2020-2023  润新知