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