• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    ASP.NET实现将word文档转换成pdf的方法

    本文实例讲述了ASP.NET实现将word文档转换成pdf的方法,分享给大家供大家参考。具体实现步骤如下:

    一、添加引用

    复制代码 代码如下:
    using Microsoft.Office.Interop.Word;

     
    二、转换方法
     
    1、方法

    复制代码 代码如下:
    /// summary>
        /// 把Word文件转换成pdf文件
        /// /summary>
        /// param name="sourcePath">需要转换的文件路径和文件名称/param>
        /// param name="targetPath">转换完成后的文件的路径和文件名名称/param>
        /// returns>成功返回true,失败返回false/returns>
        public static bool WordToPdf(string sourcePath, string targetPath)
        {
            bool result = false;
            WdExportFormat wdExportFormatPDF = WdExportFormat.wdExportFormatPDF;//转换格式1.wdExportFormatPDF转换成pdf格式 2.wdExportFormatXPS转换成xps格式
            object missing = Type.Missing;
            Microsoft.Office.Interop.Word.ApplicationClass applicationClass = null;
            Document document = null;
            try
            {
                applicationClass = new Microsoft.Office.Interop.Word.ApplicationClass();
                object inputfileName = sourcePath;//需要转格式的文件路径
                string outputFileName = targetPath;//转换完成后PDF或XPS文件的路径和文件名名称
                WdExportFormat exportFormat = wdExportFormatPDF;//导出文件所使用的格式
                bool openAfterExport = false;//转换完成后是否打开
                WdExportOptimizeFor wdExportOptimizeForPrint = WdExportOptimizeFor.wdExportOptimizeForPrint;//导出方式1.wdExportOptimizeForPrint针对打印进行导出,质量较高,生成的文件大小较大。2.wdExportOptimizeForOnScreen 针对屏幕显示进行导出,质量较差,生成的文件大小较小。
                WdExportRange wdExportAllDocument = WdExportRange.wdExportAllDocument;//导出全部内容(枚举)
                int from = 0;//起始页码
                int to = 0;//结束页码
                WdExportItem wdExportDocumentContent = WdExportItem.wdExportDocumentContent;//指定导出过程中是否只包含文本或包含文本的标记.1.wdExportDocumentContent:导出文件没有标记,2.导出文件有标记
                bool includeDocProps = true;//指定是否包含新导出的文件在文档属性
                bool keepIRM = true;//
                WdExportCreateBookmarks wdExportCreateWordBookmarks = WdExportCreateBookmarks.wdExportCreateWordBookmarks;//1.wdExportCreateNoBookmarks:不要在导出文件中创建书签,2.wdExportCreateHeadingBookmarks:标题和文本框导出的文件中创建一个书签,3.wdExportCreateWordBookmarks每个字的书签,其中包括除包含页眉和页脚中的所有书签导出的文件中创建一个书签。
                bool docStructureTags = true;
                bool bitmapMissingFonts = true;
                bool UseISO19005_1 = false;//生成的文档是否符合 ISO 19005-1 (PDF/A)
                document = applicationClass.Documents.Open(ref inputfileName, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);
                if (document != null)
                {
                    document.ExportAsFixedFormat(outputFileName, exportFormat, openAfterExport, wdExportOptimizeForPrint, wdExportAllDocument, from, to, wdExportDocumentContent, includeDocProps, keepIRM, wdExportCreateWordBookmarks, docStructureTags, bitmapMissingFonts, UseISO19005_1, ref missing);
                }
                result = true;
            }
            catch
            {
                result = false;
            }
            finally
            {
                if (document != null)
                {
                    document.Close(ref missing, ref missing, ref missing);
                    document = null;
                }
                if (applicationClass != null)
                {
                    applicationClass.Quit(ref missing, ref missing, ref missing);
                    applicationClass = null;
                }
            }
            return result;
        }

     
    2、简洁方法

    复制代码 代码如下:
    /// summary>
        /// 把Word文件转换成pdf文件
        /// /summary>
        /// param name="sourcePath">需要转换的文件路径和文件名称/param>
        /// param name="targetPath">转换完成后的文件的路径和文件名名称/param>
        /// returns>成功返回true,失败返回false/returns>
        public static bool WordToPdf(object sourcePath, string targetPath)
        {
            bool result = false;
            WdExportFormat wdExportFormatPDF = WdExportFormat.wdExportFormatPDF;
            object missing = Type.Missing;
            Microsoft.Office.Interop.Word.ApplicationClass applicationClass = null;
            Document document = null;
            try
            {
                applicationClass = new Microsoft.Office.Interop.Word.ApplicationClass();
                document = applicationClass.Documents.Open(ref sourcePath, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);
                if (document != null)
                {
                    document.ExportAsFixedFormat(targetPath, wdExportFormatPDF, false, WdExportOptimizeFor.wdExportOptimizeForPrint, WdExportRange.wdExportAllDocument, 0, 0, WdExportItem.wdExportDocumentContent, true, true, WdExportCreateBookmarks.wdExportCreateWordBookmarks, true, true, false, ref missing);
                }
                result = true;
            }
            catch
            {
                result = false;
            }
            finally
            {
                if (document != null)
                {
                    document.Close(ref missing, ref missing, ref missing);
                    document = null;
                }
                if (applicationClass != null)
                {
                    applicationClass.Quit(ref missing, ref missing, ref missing);
                    applicationClass = null;
                }
            }
            return result;
        }

     
    三、调用
    复制代码 代码如下:
    OfficeToPdf.WordToPdf("d:\\1234.doc", "d:\\1234.pdf");

    希望本文所述对大家的asp.net程序设计有所帮助。

    您可能感兴趣的文章:
    • C#实现pdf导出 .Net导出pdf文件
    • asp.net 按指定模板导出word,pdf实例代码
    • Asp.net实现直接在浏览器预览Word、Excel、PDF、Txt文件(附源码)
    • ASP.NET MVC 项目直接预览PDF文件
    • 详解开源免费且稳定实用的.NET PDF打印组件itextSharp(.NET组件介绍之八)
    • asp.net实现将ppt文档转换成pdf的方法
    • ASP.NET保存PDF、Word和Excel文件到数据库
    • 如何使用Rotativa在ASP.NET Core MVC中创建PDF详解
    上一篇:ASP.NET MVC中为DropDownListFor设置选中项的方法
    下一篇:asp.net中virtual和abstract的区别分析
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    ASP.NET实现将word文档转换成pdf的方法 ASP.NET,实,现将,word,文档,