概述
通过合并、拆分的功能,将不同的文档中的幻灯片进行组合形成新的的文档,同时也可以将一个多页的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)
步骤1 :新建文档
步骤2:加载2个需要合并的PPT幻灯片
Presentation ppt1 = new Presentation("test1.pptx",FileFormat.Pptx2010); Presentation ppt2 = test2.pptx插入ppt1的数据到ppt for (int i = 0; i < ppt1.Slides.Count; i++) { ppt.Slides.Append(ppt1.Slides[i]); } 插入ppt2中的第1张幻灯片数据到ppt ppt.Slides.Append(ppt2.Slides[0]);
步骤4:保存文档
ppt.SavetoFile(result.pptx",FileFormat.Pptx2010);
合并前:
合并后:
全部代码:
using Spire.Presentation; namespace MergeSlides_PPT { class Program { static void Main(string[] args) { 创建新的Presentation示例并删除默认的空白幻灯片 Presentation ppt = Presentation(); ppt.Slides.RemoveAt(0); 加载需要合并的两个幻灯片文档 Presentation ppt1 = 插入ppt1的数据 ) { ppt.Slides.Append(ppt1.Slides[i]); } 插入ppt2中的第一张幻灯片数据 ppt.Slides.Append(ppt2.Slides[]); 保存ppt文档 ppt.SavetoFile(stem.Diagnostics.Process.Start(); } } }
【示例2】合并PPT幻灯片(方式2)
步骤1:加载幻灯片
实例化Presentation类的对象,并加载幻灯片文档 Presentation ppt1 = 获取第一张幻灯片 ISlide slide = ppt1.Slides[]; 加载第二个PowerPoint示例文档 Presentation ppt2 = Presentation(); ppt2.LoadFromFile(将ppt1中获取的第一个幻灯片数据插入到ppt2,并设置为第一页 int index = ; ppt2.Slides.Insert(index,slide);
步骤3:保存文档
ppt2.SavetoFile(Merge2.pptx![]()
合并后:
全部代码:
View CodeMergeSlides2_PPT { 实例化Presentation类的对象,并加载幻灯片文档 Presentation ppt1 = 获取第一张幻灯片 ISlide slide = ppt1.Slides[]; 加载第二个PowerPoint示例文档 Presentation ppt2 = Presentation(); ppt2.LoadFromFile(将ppt1中获取的第一个幻灯片数据插入到ppt2,并设置为第一页 ; ppt2.Slides.Insert(index,slide); 保存文档2 ppt2.SavetoFile(); } } }
【示例3】按PPT幻灯片每一页拆分
步骤1: 加载测试文档
实例化Presentation类的对象,并加载测试文档 Presentation ppt = Presentation(); ppt.LoadFromFile(test.pptx");步骤2:拆分ppt文档
遍历文档中的所有幻灯片 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保存newppt文档 }拆分前:
拆分后:
全部代码:
View CodeSpire.Presentation; System; SplitSlides_PPT { 实例化Presentation类的对象,并加载测试文档 Presentation ppt = Presentation(); ppt.LoadFromFile(遍历文档中的所有幻灯片 ) { Presentation newppt = 创建一个新的PPT文档 newppt.Slides.RemoveAt(删除新建文档中默认的第一张幻灯片 newppt.Slides.Append(ppt.Slides[i]);将ppt中的幻灯片按每一页添加到newppt中 newppt.SavetoFile(String.Format(保存newppt文档 } } } }【示例4】按PPT指定页数来拆分
步骤1:加载文档
创建文档ppt加载需要拆分的文档 Presentation ppt = Presentation(); ppt.LoadFromFile(");步骤2:将文档的1-2页拆分,保存为文档1
Presentation ppt1 = Presentation(); ppt1.Slides.RemoveAt(); 0; i < 2; i++) { ppt1.Slides.Append(ppt.Slides[i]); } ppt1.SavetoFile(String.Format(Split1.pptx"),FileFormat.Pptx2010);步骤3:将文档的3-4页拆分,保存为文档2
Presentation ppt2 = Presentation(); ppt2.Slides.RemoveAt(2; i < 4; i++) { ppt2.Slides.Append(ppt.Slides[i]); } ppt2.SavetoFile(String.Format(Split2.pptxPresentation ppt3 = Presentation(); ppt3.Slides.RemoveAt(); ppt3.Slides.Append(ppt.Slides[4]); ppt3.SavetoFile(String.Format(Split3.pptx![]()
拆分后:
全部代码:
@H_64_502@
SplitSlides2_PPT { 创建文档ppt加载需要拆分的文档 Presentation ppt = 将文档的1-2页拆分,保存为文档1 Presentation ppt1 = Presentation(); ppt1.Slides.RemoveAt(); ) { ppt1.Slides.Append(ppt.Slides[i]); } ppt1.SavetoFile(String.Format(),1)">将文档的3-4页拆分,保存为文档2 Presentation ppt2 = Presentation(); ppt2.Slides.RemoveAt() { ppt2.Slides.Append(ppt.Slides[i]); } ppt2.SavetoFile(String.Format(将文档第5页拆分,保存为文档3 Presentation ppt3 = Presentation(); ppt3.Slides.RemoveAt(); ppt3.Slides.Append(ppt.Slides[]); ppt3.SavetoFile(String.Format(View Code
(本文完)
转载请注明出处。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。