asp.net core調(diào)用wps實(shí)現(xiàn)word轉(zhuǎn)pdf的過(guò)程
安裝wps
創(chuàng)建.net core控制項(xiàng)目
添加com引用,搜索wps
準(zhǔn)備word,名字叫001.docx
word轉(zhuǎn)pdf
編寫(xiě)代碼
namespace WPSStu01 { internal class Program { static void Main(string[] args) { Console.WriteLine("轉(zhuǎn)化開(kāi)始"); var inputFile = "001.docx"; var outputFile = "001.pdf"; WordExportAsPdf(inputFile, outputFile); Console.WriteLine("轉(zhuǎn)化成功"); Console.ReadKey(); } /// <summary> /// 轉(zhuǎn)換為pdf文件,適合(.doc、.docx、.mht、.htm文件類型) /// </summary> /// <param name="fileName"></param> /// <param name="outputFileName"></param> /// <returns></returns> public static string WordExportAsPdf(string fileName, string outputFileName) { string isSucceed = "OK"; Word.WdExportFormat fileFormat = Word.WdExportFormat.wdExportFormatPDF; Word.Application wordApp = null; if (wordApp == null) wordApp = new Word.Application(); Word._Document wordDoc = null; try { wordDoc = wordApp.Documents.Open(fileName, false, true); wordDoc.ExportAsFixedFormat(outputFileName, fileFormat); } catch (Exception ex) { isSucceed = ex.Message; } finally { if (wordDoc != null) { wordDoc.Close(false); wordDoc = null; } if (wordApp != null) { wordApp.Quit(false); wordApp = null; } } return isSucceed; } } }
啟動(dòng)項(xiàng)目報(bào)錯(cuò)
選擇一下32位程序
發(fā)現(xiàn)還是不行,最后換成.net framework 4.8的控制臺(tái)項(xiàng)目
添加dll的引用,dll需要去安裝的wps里面查找
Console.WriteLine("轉(zhuǎn)化開(kāi)始"); var exePath = System.AppDomain.CurrentDomain.BaseDirectory; var inputFile = Path.Combine(exePath, "001.docx"); var outputFile = Path.Combine(exePath, "001.pdf"); WordExportAsPdf(inputFile, outputFile); Console.WriteLine("轉(zhuǎn)化成功"); Console.ReadKey();
asp.net core也可以問(wèn)題根本原因是路徑的問(wèn)題,不能些相對(duì)路徑,必須絕對(duì)路徑
excel轉(zhuǎn)pdf
/// <summary> /// Excel轉(zhuǎn)換為pdf文件 /// </summary> /// <param name="fileName"></param> /// <param name="outputFileName"></param> /// <returns></returns> public static string ExcelExportAsPdf(string fileName, string outputFileName) { string isSucceed = "OK"; Excel.Application excelApp = null; if (excelApp == null) excelApp = new Excel.Application(); Excel.Workbook workBook = null; try { workBook = excelApp.Workbooks.Open(fileName, false, true); workBook.ExportAsFixedFormat(Excel.XlFixedFormatType.xlTypePDF,outputFileName); } catch (Exception ex) { isSucceed = ex.Message; } finally { if (workBook != null) { workBook.Close(false); workBook = null; } if (excelApp != null) { excelApp.Quit(); excelApp = null; } } return isSucceed; }
調(diào)用
Console.WriteLine("轉(zhuǎn)化開(kāi)始"); var exePath = System.AppDomain.CurrentDomain.BaseDirectory; var inputFile = Path.Combine(exePath, "002.xls"); var outputFile = Path.Combine(exePath, "002.pdf"); ExcelExportAsPdf(inputFile, outputFile); Console.WriteLine("轉(zhuǎn)化成功"); Console.ReadKey();
ppt轉(zhuǎn)pdf
/// <summary> /// PPT轉(zhuǎn)換為pdf文件 /// </summary> /// <param name="fileName"></param> /// <param name="outputFileName"></param> /// <returns></returns> public static string PptExportAsPdf(string fileName, string outputFileName) { string isSucceed = "OK"; PowerPoint.Application pptApp = null; if (pptApp == null) pptApp = new PowerPoint.Application(); PowerPoint.Presentation presentation = null; try { presentation = pptApp.Presentations.Open(fileName); presentation.ExportAsFixedFormat(outputFileName,PowerPoint.PpFixedFormatType.ppFixedFormatTypePDF); } catch (Exception ex) { isSucceed = ex.Message; } finally { if (pptApp != null) { presentation.Close(); pptApp = null; } if (pptApp != null) { pptApp.Quit(); pptApp = null; } } return isSucceed; }
調(diào)用
Console.WriteLine("轉(zhuǎn)化開(kāi)始"); var exePath = System.AppDomain.CurrentDomain.BaseDirectory; var inputFile = Path.Combine(exePath, "003.pptx"); var outputFile = Path.Combine(exePath, "003.pdf"); PptExportAsPdf(inputFile, outputFile); Console.WriteLine("轉(zhuǎn)化成功"); Console.ReadKey();
到此這篇關(guān)于asp.net core 調(diào)用wps實(shí)現(xiàn)word轉(zhuǎn)pdf的文章就介紹到這了,更多相關(guān)asp.net core word轉(zhuǎn)pdf內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
asp.net中倒計(jì)時(shí)自動(dòng)跳轉(zhuǎn)頁(yè)面的實(shí)現(xiàn)方法(使用javascript)
本篇文章介紹了,asp.net中倒計(jì)時(shí)自動(dòng)跳轉(zhuǎn)頁(yè)面的實(shí)現(xiàn)方法(使用javascript)。需要的朋友參考下2013-05-05Visual Studio 2017新版發(fā)布 更強(qiáng)大!
Visual Studio 2017新版發(fā)布 更強(qiáng)大!對(duì)Visual Studio 2017感興趣的小伙伴們可以參考一下2017-05-05visual studio 2012安裝配置方法圖文教程 附opencv配置教程
這篇文章主要為大家分享了visual studio 2012安裝配置方法圖文教程,文中附opencv配置教程,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-05-05更改.NET中的默認(rèn)時(shí)區(qū)的操作方法
除了"在操作系統(tǒng)中修改時(shí)區(qū)信息,然后重啟.NET應(yīng)用程序,使其生效"之外,如何在不修改操作系統(tǒng)時(shí)區(qū)的前提下,修改.NET中的默認(rèn)時(shí)區(qū)呢,下面小編給大家分享更改.NET中的默認(rèn)時(shí)區(qū)的操作方法,感興趣的朋友一起看看吧2024-06-06asp.net Mvc4 使用ajax結(jié)合分頁(yè)插件實(shí)現(xiàn)無(wú)刷新分頁(yè)
本篇文章主要介紹了 asp.net Mvc4 使用ajax結(jié)合分頁(yè)插件實(shí)現(xiàn)無(wú)刷新分頁(yè),ajax通過(guò)回調(diào)函數(shù)把控制器返回的分部視圖內(nèi)容加載到主視圖中顯示,有興趣的可以了解一下。2017-01-01VS2022?.NET5一鍵發(fā)布到遠(yuǎn)程騰訊云IIS服務(wù)器的詳細(xì)步驟
這篇文章主要介紹了VS2022?.NET5一鍵發(fā)布到遠(yuǎn)程騰訊云IIS服務(wù)器,首先需要添加服務(wù)器相關(guān)功能,文中通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-04-04ASP.NET Core應(yīng)用中與第三方IoC/DI框架的整合
ASP.NET Core應(yīng)用中,針對(duì)第三方DI框架的整合可以通過(guò)在定義Startup類型的ConfigureServices方法返回一個(gè)ServiceProvider來(lái)實(shí)現(xiàn)。但是并不是那么容易的,下面通過(guò)實(shí)例給大家分享一下2017-04-04ASP.NET WebForms實(shí)現(xiàn)全局異常捕獲與處理的最佳實(shí)踐
文章介紹了在ASP.NET WebForms中實(shí)現(xiàn)全局異常捕獲與處理的最佳實(shí)踐,包括在Global.asax中使用Application_Error、在Web.config中配置customErrors、在代碼中使用try-catch、全局異常過(guò)濾以及使用日志記錄庫(kù)等方法,感興趣的朋友一起看看吧2025-01-01