如何在ASP.NET MVC中读取PPT文件?

时间:2015-03-12 09:48:50

标签: c# asp.net asp.net-mvc-4 powerpoint

我在桌面上有PPT文件,名为“slide.ppt”。我想在我的ReadSlide函数中阅读此PPT文件的所有幻灯片,如下所示

public void ReadSlide(){


}

如何在C#代码中读取PPT文件中的所有幻灯片?

2 个答案:

答案 0 :(得分:3)

如果它是PPTX,您可以使用OpenXML阅读它。既然你特意要求PPT,那就更难了。

由于it isn't supported in a server environment,您不应该使用自动化/互操作。

这意味着您必须使用第三方工具来阅读PPT。如果你谷歌为他们,你会看到一长串的。我从未使用它,但Aspose似乎很好地完成了这项工作。

答案 1 :(得分:2)

使用如下

public void ReadSlide(){

            string filePath= @"C:\Users\UserName\Slide.pptx";

            Microsoft.Office.Interop.PowerPoint.Application PowerPoint_App = new Microsoft.Office.Interop.PowerPoint.Application();
            Microsoft.Office.Interop.PowerPoint.Presentations multi_presentations = PowerPoint_App.Presentations;
            Microsoft.Office.Interop.PowerPoint.Presentation presentation = multi_presentations.Open(filePath, MsoTriState.msoFalse, MsoTriState.msoFalse, MsoTriState.msoFalse);

            string presentation_textforParent = "";
            foreach (var item in presentation.Slides[1].Shapes)
            {
                var shape = (Microsoft.Office.Interop.PowerPoint.Shape)item;
                if (shape.HasTextFrame == MsoTriState.msoTrue)
                {
                    if (shape.TextFrame.HasText == MsoTriState.msoTrue)
                    {
                        var textRange = shape.TextFrame.TextRange;
                        var text = textRange.Text;

                        presentation_textforParent += text + " ";
                    }
                }
            }
}