此条经验将分享通过C#编程读取PPT幻灯片中SmartArt中的文本内容的方法。
工具/原料
FreeSpire.Presentationfor.NET3.3(社区版)
VisualStudio
dll引用
1、在E-iceblue官网或者Nuget网站上下载FreeSpire.Presentationfor.NET的安装包后,注意在编辑代码时,添加引用Spire.Presentation.dll到程序。dll文件可在安装路径下的Bin文件夹中获取。
C#代码(供参考)
1、测试文档如下,幻灯片中的含有一个SmartArt。下面将演示读取其中的文本内容。
2、usingSpire.Presentation.Diagrams;usingSystem.Drawing;usingSystem.Text;usingSystem.IO;usingSpire.Presentation;namespaceExtractTextFromSmartArt_PPT{classProgram{staticvoidMain(string[]args){//初始化一个Presentation类实例,并加载文档Presentationppt=newPresentation();ppt.LoadFromFile("test.pptx");//新建一个StringBuilder对象StringBuilderst=newStringBuilder();//遍历文档中的SmartArt图形for(inti=0;i<ppt.Slides.Count;i++){for(intj=0;j<ppt.Slides[i].Shapes.Count;j++){if(ppt.Slides[i].Shapes[j]isISmartArt){ISmartArtsmartArt=ppt.Slides[i].Shapes[j]asISmartArt;for(intk=0;k<smartArt.Nodes.Count;k++){st.Append(smartArt.Nodes[k].TextFrame.Text);}}}}//将文本写入TXTFile.WriteAllText("Result.txt",st.ToString());System.Diagnostics.Process.Start("Result.txt");}}}
3、完成代码后,调试运行程序,生成读取结果(如下图):