word保存为pdf文件

方法一:Microsoft.Office.Interop.Word另存

/// <summary>

        /// 将word保存为pdf文件
        /// </summary>
        /// <param name="wordFileName">完整的文件名</param>
        /// <param name="savePath">保存的路径</param>
        /// <returns>保存后的文件名</returns>
        public string WordToPdf(string wordFileName, string savePath = null)
        {
            //宣告WORD物件
            Microsoft.Office.Interop.Word.ApplicationClass word = new Microsoft.Office.Interop.Word.ApplicationClass();
            Type wordType = word.GetType();
            string wordSaveFileName = "";
            try
            {
                Microsoft.Office.Interop.Word.Documents docs = word.Documents;
                //打開WORD檔
                Type docsType = docs.GetType();
                word.DisplayAlerts = WdAlertLevel.wdAlertsNone;
                word.Visible = false;
                object oMissing = System.Reflection.Missing.Value;
                object filepath = wordFileName;
                Microsoft.Office.Interop.Word.Document doc = word.Documents.Open(ref filepath, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing);
                //(Microsoft.Office.Interop.Word.Document)docsType.InvokeMember("Open", System.Reflection.BindingFlags.InvokeMethod, null, docs, new Object[] { wordFileName, true, true });
                //將開啟檔案轉存為HTML檔 
                Type docType = doc.GetType();
                wordSaveFileName = Path.GetFileName(wordFileName).Replace(Path.GetExtension(wordFileName), ".pdf");
                string saveFile = "";
                if (String.IsNullOrEmpty(savePath))
                {
                    saveFile = wordFileName.Replace(Path.GetExtension(wordFileName), ".pdf");
                }
                else
                {
                    saveFile = savePath + "\\" + wordSaveFileName;
                }
                docType.InvokeMember("SaveAs", System.Reflection.BindingFlags.InvokeMethod, null, doc, new object[] { saveFile, Microsoft.Office.Interop.Word.WdSaveFormat.wdFormatPDF });
                docType.InvokeMember("Close", System.Reflection.BindingFlags.InvokeMethod, null, doc, null);
            }
            finally
            {
                //退出 Word 
                wordType.InvokeMember("Quit", System.Reflection.BindingFlags.InvokeMethod, null, word, null);
            }
            return wordSaveFileName;

        }


方法二:Aspose.Words

Aspose.Words.Document document = new Aspose.Words.Document(fileName);

document.Save(fileName.Replace(Path.GetExtension(fileName), ".pdf"), SaveFormat.Pdf);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值