zoukankan      html  css  js  c++  java
  • 操作word,Excel,PPT

    //C#编程,将Word转PDF,该方法有一定弊端,但是比起网路上的其他方法来说,还算比较好的,弊端是需要客户机上安装有WORD 2007或更高的版本。
          //1、添加引用: Microsoft.Office.Interop.Word版本12.0.0.0;
          // 2、在开头添加命名空间引用:using Microsoft.Office.Interop.Word;
          //3、具体实现方法如下:
          //Word转换成pdf
          ///<summary>
          /// 把Word文件转换成为PDF格式文件 ///</summary>
          ///<param name="sourcePath">源文件路径</param> ///<param name="targetPath">目标文件路径</param> ///<returns>true=转换成功</returns>
          public bool WordToPDF(string sourcePath, string targetPath)
          {
              //sourcePath = Server.MapPath("/Content/file/吴波.docx");
              //targetPath = Server.MapPath("/Content/file/吴波.pdf");
              bool result = false;
              WdExportFormat exportFormat = WdExportFormat.wdExportFormatPDF;
              object paramMissing = Type.Missing;
              ApplicationClass wordApplication = new ApplicationClass();
              _Document wordDocument = null;
              try
              {
                  object paramSourceDocPath = sourcePath;
                  string paramExportFilePath = targetPath;
                  WdExportFormat paramExportFormat = exportFormat;
                  bool paramOpenAfterExport = false;
                  WdExportOptimizeFor paramExportOptimizeFor = WdExportOptimizeFor.wdExportOptimizeForPrint;
                  WdExportRange paramExportRange = WdExportRange.wdExportAllDocument;
                  int paramStartPage = 0;
                  int paramEndPage = 0;
                  WdExportItem paramExportItem = WdExportItem.wdExportDocumentContent;
                  bool paramIncludeDocProps = true;
                  bool paramKeepIRM = true;
                  WdExportCreateBookmarks paramCreateBookmarks = WdExportCreateBookmarks.wdExportCreateWordBookmarks;
                  bool paramDocStructureTags = true;
                  bool paramBitmapMissingFonts = true;
                  bool paramUseISO19005_1 = false;
                  wordDocument = wordApplication.Documents.Open(
                     ref paramSourceDocPath, ref paramMissing, ref paramMissing,
                     ref paramMissing, ref paramMissing, ref paramMissing,
                    ref paramMissing, ref paramMissing, ref paramMissing,
                       ref paramMissing, ref paramMissing, ref paramMissing,
                      ref paramMissing, ref paramMissing, ref paramMissing,
                      ref paramMissing);
                  if (wordDocument != null)
                      wordDocument.ExportAsFixedFormat(paramExportFilePath,
                         paramExportFormat, paramOpenAfterExport,
                          paramExportOptimizeFor, paramExportRange, paramStartPage,
                          paramEndPage, paramExportItem, paramIncludeDocProps,
                          paramKeepIRM, paramCreateBookmarks, paramDocStructureTags,
                         paramBitmapMissingFonts, paramUseISO19005_1,
                          ref paramMissing);
                  result = true;
              }
              catch
              {
                  result = false;
              }
              finally
              {
                  if (wordDocument != null)
                  {
                      wordDocument.Close(ref paramMissing, ref paramMissing, ref paramMissing);
                      wordDocument = null;
                  }
                  if (wordApplication != null)
                  {
                      wordApplication.Quit(ref paramMissing, ref paramMissing, ref paramMissing);
                      wordApplication = null;
                  }
                  GC.Collect();
                  GC.WaitForPendingFinalizers();
                  GC.Collect();
                  GC.WaitForPendingFinalizers();
              }
              return result;
          }

          /// <summary>
          /// 把Excel文件转换成PDF格式文件 
          /// </summary>
          /// <param name="sourcePath">源文件路径</param>
          /// <param name="targetPath">目标文件路径</param>
          /// <returns>true=转换成功</returns>
          public bool XLSConvertToPDF(string sourcePath, string targetPath)
          {
              bool result = false;
              Excel.XlFixedFormatType targetType = Excel.XlFixedFormatType.xlTypePDF;
              object missing = Type.Missing;
              Excel.ApplicationClass application = null;
              Excel.Workbook workBook = null;
              try
              {
                  application = new Excel.ApplicationClass();
                  object target = targetPath;
                  object type = targetType;
                  workBook = application.Workbooks.Open(sourcePath, missing, missing, missing, missing, missing,
                      missing, missing, missing, missing, missing, missing, missing, missing, missing);
                  workBook.ExportAsFixedFormat(targetType, target, Excel.XlFixedFormatQuality.xlQualityStandard, true, false, missing, missing, missing, missing);
                  result = true;
              }
              catch
              {
                  result = false;
              }
              finally
              {
                  if (workBook != null)
                  {
                      workBook.Close(true, missing, missing);
                      workBook = null;
                  }
                  if (application != null)
                  {
                      application.Quit();
                      application = null;
                  }
                  GC.Collect();
                  GC.WaitForPendingFinalizers();
                  GC.Collect();
                  GC.WaitForPendingFinalizers();
              }
              return result;
          }
          ///<summary>       
          /// 把PowerPoint文件转换成PDF格式文件      
          ///</summary>       
          ///<param name="sourcePath">源文件路径</param>    
          ///<param name="targetPath">目标文件路径</param>
          ///<returns>true=转换成功</returns>
          public bool PPTConvertToPDF(string sourcePath, string targetPath)
          {
              bool result;
              PowerPoint.PpSaveAsFileType targetFileType = PowerPoint.PpSaveAsFileType.ppSaveAsPDF;
              object missing = Type.Missing;
              PowerPoint.ApplicationClass application = null;
              PowerPoint.Presentation persentation = null;
              try
              {
                  application = new PowerPoint.ApplicationClass();
                  persentation = application.Presentations.Open(sourcePath, MsoTriState.msoTrue, MsoTriState.msoFalse, MsoTriState.msoFalse); persentation.SaveAs(targetPath, targetFileType, Microsoft.Office.Core.MsoTriState.msoTrue);
                  result = true;
              }
              catch
              {
                  result = false;
              }
              finally
              {
                  if (persentation != null)
                  {

      //C#编程,将Word转PDF,该方法有一定弊端,但是比起网路上的其他方法来说,还算比较好的,弊端是需要客户机上安装有WORD 2007或更高的版本。 
            //1、添加引用: Microsoft.Office.Interop.Word版本12.0.0.0;
            // 2、在开头添加命名空间引用:using Microsoft.Office.Interop.Word; 
            //3、具体实现方法如下: 
            //Word转换成pdf 
            ///<summary> 
            /// 把Word文件转换成为PDF格式文件 ///</summary> 
            ///<param name="sourcePath">源文件路径</param> ///<param name="targetPath">目标文件路径</param> ///<returns>true=转换成功</returns> 
            public bool WordToPDF(string sourcePath, string targetPath)
            {
                //sourcePath = Server.MapPath("/Content/file/吴波.docx");
                //targetPath = Server.MapPath("/Content/file/吴波.pdf");
                bool result = false;
                WdExportFormat exportFormat = WdExportFormat.wdExportFormatPDF;
                object paramMissing = Type.Missing;
                ApplicationClass wordApplication = new ApplicationClass();
                _Document wordDocument = null;
                try
                {
                    object paramSourceDocPath = sourcePath;
                    string paramExportFilePath = targetPath;
                    WdExportFormat paramExportFormat = exportFormat;
                    bool paramOpenAfterExport = false;
                    WdExportOptimizeFor paramExportOptimizeFor = WdExportOptimizeFor.wdExportOptimizeForPrint;
                    WdExportRange paramExportRange = WdExportRange.wdExportAllDocument;
                    int paramStartPage = 0;
                    int paramEndPage = 0;
                    WdExportItem paramExportItem = WdExportItem.wdExportDocumentContent;
                    bool paramIncludeDocProps = true;
                    bool paramKeepIRM = true;
                    WdExportCreateBookmarks paramCreateBookmarks = WdExportCreateBookmarks.wdExportCreateWordBookmarks;
                    bool paramDocStructureTags = true;
                    bool paramBitmapMissingFonts = true;
                    bool paramUseISO19005_1 = false;
                    wordDocument = wordApplication.Documents.Open(
                       ref paramSourceDocPath, ref paramMissing, ref paramMissing,
                       ref paramMissing, ref paramMissing, ref paramMissing,
                      ref paramMissing, ref paramMissing, ref paramMissing,
                         ref paramMissing, ref paramMissing, ref paramMissing,
                        ref paramMissing, ref paramMissing, ref paramMissing,
                        ref paramMissing);
                    if (wordDocument != null)
                        wordDocument.ExportAsFixedFormat(paramExportFilePath,
                           paramExportFormat, paramOpenAfterExport,
                            paramExportOptimizeFor, paramExportRange, paramStartPage,
                            paramEndPage, paramExportItem, paramIncludeDocProps,
                            paramKeepIRM, paramCreateBookmarks, paramDocStructureTags,
                           paramBitmapMissingFonts, paramUseISO19005_1,
                            ref paramMissing);
                    result = true;
                }
                catch
                {
                    result = false;
                }
                finally
                {
                    if (wordDocument != null)
                    {
                        wordDocument.Close(ref paramMissing, ref paramMissing, ref paramMissing);
                        wordDocument = null;
                    }
                    if (wordApplication != null)
                    {
                        wordApplication.Quit(ref paramMissing, ref paramMissing, ref paramMissing);
                        wordApplication = null;
                    }
                    GC.Collect();
                    GC.WaitForPendingFinalizers();
                    GC.Collect();
                    GC.WaitForPendingFinalizers();
                }
                return result;
            }
    
    
    
            /// <summary>
            /// 把Excel文件转换成PDF格式文件  
            /// </summary>
            /// <param name="sourcePath">源文件路径</param>
            /// <param name="targetPath">目标文件路径</param>
            /// <returns>true=转换成功</returns>
            public bool XLSConvertToPDF(string sourcePath, string targetPath)
            {
                bool result = false;
                Excel.XlFixedFormatType targetType = Excel.XlFixedFormatType.xlTypePDF;
                object missing = Type.Missing;
                Excel.ApplicationClass application = null;
                Excel.Workbook workBook = null;
                try
                {
                    application = new Excel.ApplicationClass();
                    object target = targetPath;
                    object type = targetType;
                    workBook = application.Workbooks.Open(sourcePath, missing, missing, missing, missing, missing,
                        missing, missing, missing, missing, missing, missing, missing, missing, missing);
                    workBook.ExportAsFixedFormat(targetType, target, Excel.XlFixedFormatQuality.xlQualityStandard, true, false, missing, missing, missing, missing);
                    result = true;
                }
                catch
                {
                    result = false;
                }
                finally
                {
                    if (workBook != null)
                    {
                        workBook.Close(true, missing, missing);
                        workBook = null;
                    }
                    if (application != null)
                    {
                        application.Quit();
                        application = null;
                    }
                    GC.Collect();
                    GC.WaitForPendingFinalizers();
                    GC.Collect();
                    GC.WaitForPendingFinalizers();
                }
                return result;
            }
            ///<summary>        
            /// 把PowerPoint文件转换成PDF格式文件       
            ///</summary>        
            ///<param name="sourcePath">源文件路径</param>     
            ///<param name="targetPath">目标文件路径</param> 
            ///<returns>true=转换成功</returns> 
            public bool PPTConvertToPDF(string sourcePath, string targetPath)
            {
                bool result;
                PowerPoint.PpSaveAsFileType targetFileType = PowerPoint.PpSaveAsFileType.ppSaveAsPDF;
                object missing = Type.Missing;
                PowerPoint.ApplicationClass application = null;
                PowerPoint.Presentation persentation = null;
                try
                {
                    application = new PowerPoint.ApplicationClass();
                    persentation = application.Presentations.Open(sourcePath, MsoTriState.msoTrue, MsoTriState.msoFalse, MsoTriState.msoFalse); persentation.SaveAs(targetPath, targetFileType, Microsoft.Office.Core.MsoTriState.msoTrue);
                    result = true;
                }
                catch
                {
                    result = false;
                }
                finally
                {
                    if (persentation != null)
                    {
                        persentation.Close();
                        persentation = null;
                    }
                    if (application != null)
                    {
                        application.Quit();
                        application = null;
                    }
                    GC.Collect();
                    GC.WaitForPendingFinalizers();
                    GC.Collect();
                    GC.WaitForPendingFinalizers();
                }
                return result;
            }

                      persentation.Close();
                      persentation = null;
                  }
                  if (application != null)
                  {
                      application.Quit();
                      application = null;
                  }
                  GC.Collect();
                  GC.WaitForPendingFinalizers();
                  GC.Collect();
                  GC.WaitForPendingFinalizers();
              }
              return result;
          }

  • 相关阅读:
    城市社会经济专项规划之生态产业规划
    土地资源承载力研究
    生态功能区划方法之三:聚类分析法和生态融合法
    生态功能区划综述
    生态功能区划及生态规划的重要内容:生态环境现状评价
    生态功能区划方法之一:生态敏感性分析法
    生态环境专项规划
    城市社会经济专项规划之生态人居规划
    城市生态规划关键技术方法之五:生态支持系统瓶颈分析方法
    环境容量研究
  • 原文地址:https://www.cnblogs.com/zhaojianwei/p/4036571.html
Copyright © 2011-2022 走看看