首页 文章

使用ASP.NET将Powerpoint转换为JPEG?

提问于
浏览
0

我有一个需要应用程序的客户端将一个powerpoint文件上传到一个Web应用程序,该应用程序可以使用ASP.NET将幻灯片显示为jpeg(或flash,silverlight,HTML,视频......任何格式) .

我使用Office开发人员工具在VS 2010中使用MVC构建了应用程序,但客户端服务器没有Powerpoint,如果它无法在主机上调用Powerpoint,则Microsoft.Office.Interop.Powerpoint程序集似乎无法运行 .

我已经看过每一个可能的讨论,大多数人都认为它的不良做法甚至将Powerpoint部署在服务器上,所以我的问题是有没有人知道可以将PPT幻灯片转换为JPG或Flash或任何东西的实用程序网站上的幻灯片?

2 回答

  • 1

    这里是使用Interop对象..

    private void mConvertPPT_To_Images(string sPPTFilePath, string sImagesDirectoryPath)
        {
            try
            {
                Microsoft.Office.Interop.PowerPoint.Application appPpt = new Microsoft.Office.Interop.PowerPoint.Application();
                Microsoft.Office.Interop.PowerPoint.Presentation objActivePresentation
                    = appPpt.Presentations.Open(sPPTFilePath,
                                                Microsoft.Office.Core.MsoTriState.msoCTrue,
                                                Microsoft.Office.Core.MsoTriState.msoTriStateMixed,
                                                Microsoft.Office.Core.MsoTriState.msoFalse);
                //objActivePresentation.SaveAs(sImagesDirectoryPath, PpSaveAsFileType.ppSaveAsJPG, MsoTriState.msoFalse);
                //objActivePresentation.Export(sImagesDirectoryPath + @"\Slide1.png", "png", 960, 720);
                //objActivePresentation.SaveAs(sImagesDirectoryPath + "slide", PpSaveAsFileType.ppSaveAsTIF, MsoTriState.msoFalse);
                int i = 0;
                foreach (Microsoft.Office.Interop.PowerPoint.Slide objSlide in objActivePresentation.Slides)
                {
                    //Names are generated based on timestamp. 
                    //objSlide.Export("Slide" + i, "PNG", 960, 720);
                    objSlide.Export(sImagesDirectoryPath + @"\Slide" + i + ".GIF", "GIF", 960, 720);
                    i++;
                }
                objActivePresentation.Close();
                appPpt.Quit();
            }
            catch (Exception ex)
            {
                throw;
            }
        }
    
  • 0

    iSpring有一个名为iSpring Platform(http://www.ispringsolutions.com/ispring-platform)的解决方案 . 这是一个SDK,允许使用.NET的软件将PPT演示文稿转换为HTML5和Flash . 它支持所有效果,动画和其他PowerPoint内容 .

    附:查看帖子数据并意识到作者可能已经找到了解决方案 . 也许我的答案会对其他人有用 .

相关问题