• ASP.NET实现PPT文件转换成html文件的实现方式
  • 牧羊人 发表于 2016/2/20 12:11:00 | 分类标签: asp.net 生成ppt
  • 关于把PPT数据直接生成HTML文件的方法实现方式有许多种,本文介绍一种比较简单的方法实现PPT文件转换成HTML文件的实现方式。

    主要功能代码如下:

    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.IO;
    using PPT = Microsoft.Office.Interop.PowerPoint;
    using System.Reflection;
    namespace WritePptDemo
    {
    class Program
    {
    static void Main(string[] args)
    {
    string path; //
    PPT.Application pptApp; //Excel
    PPT.Presentation pptDoc; //Excel
    PPT.Presentation pptDoctmp;
    path = @"C:\MyPPT.ppt"; //
    pptApp = new PPT.ApplicationClass(); //
    //
    if (File.Exists((string)path))
    {
    File.Delete((string)path);
    }
    //使是COM用Nothing
    Object Nothing = Missing.Value;
    pptDoc = pptApp.Presentations.Add(Microsoft.Office.Core.MsoTriState.msoFalse);
    pptDoc.Slides.Add(1, Microsoft.Office.Interop.PowerPoint.PpSlideLayout.ppLayoutText);
    string text = "示例文本";
    foreach (PPT.Slide slide in pptDoc.Slides)
    {
    foreach (PPT.Shape shape in slide.Shapes)
    {
    shape.TextFrame.TextRange.InsertAfter(text);
    }
    }
    //WdSaveFormat为Excel
    PPT.PpSaveAsFileType format = PPT.PpSaveAsFileType.ppSaveAsDefault;
    //将excelDoc为XLSX
    pptDoc.SaveAs(path, format, Microsoft.Office.Core.MsoTriState.msoFalse);
    //闭excelDoc
    pptDoc.Close();
    //闭excelApp
    pptApp.Quit();
    Console.WriteLine(path + " 创建完毕!");
    Console.ReadLine();
    string pathHtml = @"c:\MyPPT.html";
    PPT.Application pa = new PPT.ApplicationClass();
    pptDoctmp = pa.Presentations.Open(path, Microsoft.Office.Core.MsoTriState.msoTrue, Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoFalse);
    PPT.PpSaveAsFileType formatTmp = PPT.PpSaveAsFileType.ppSaveAsHTML;
    pptDoctmp.SaveAs(pathHtml, formatTmp, Microsoft.Office.Core.MsoTriState.msoFalse);
    pptDoctmp.Close();
    pa.Quit();
    Console.WriteLine(pathHtml + " 创建完毕!");
    }
    }
    }
    以上程序是使用C# 先创建一个ppt 文件并向里面写入了文字,然后再把此ppt 转换成html  ,对于上面程序需要说明的其实就是引用dll的问题, 在项目中添加引用,在com 组件中选择 microsoft powerpoint 11.0 object   library ,而如果你的电脑没有安装 office 2003 是不会有这个的,而如果安装的是office 2007 则是microsoft powerpoint 12.0 object   library。而且即使你引用成功后,还是会编译不通过,是因为少安装了 office   PIA  ,在安装office 时,如果你是选择的典型安装是不会安装这个的,因为这个只针对开发人员才会用到。可以到网上下载一个 office PIA 安装下就ok了
      

  • 请您注意

    ·自觉遵守:爱国、守法、自律、真实、文明的原则

    ·尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法规

    ·严禁发表危害国家安全,破坏民族团结、国家宗教政策和社会稳定,含侮辱、诽谤、教唆、淫秽等内容的作品

    ·承担一切因您的行为而直接或间接导致的民事或刑事法律责任

    ·您在编程中国社区新闻评论发表的作品,本网站有权在网站内保留、转载、引用或者删除

    ·参与本评论即表明您已经阅读并接受上述条款

  • 感谢本文作者
  • 作者头像
  • 昵称:牧羊人
  • 加入时间:2013/6/18 0:00:00
  • TA的签名
  • 这家伙很懒,虾米都没写
  • +进入TA的空间
  • 以下内容也很赞哦
分享按钮