asp.net core調(diào)用wps實(shí)現(xiàn)word轉(zhuǎn)pdf的過程
安裝wps


創(chuàng)建.net core控制項(xiàng)目
添加com引用,搜索wps



準(zhǔn)備word,名字叫001.docx

word轉(zhuǎn)pdf
編寫代碼
namespace WPSStu01
{
internal class Program
{
static void Main(string[] args)
{
Console.WriteLine("轉(zhuǎn)化開始");
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)化開始");
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也可以問題根本原因是路徑的問題,不能些相對(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)化開始");
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)化開始");
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)頁面的實(shí)現(xiàn)方法(使用javascript)
本篇文章介紹了,asp.net中倒計(jì)時(shí)自動(dòng)跳轉(zhuǎn)頁面的實(shí)現(xiàn)方法(使用javascript)。需要的朋友參考下2013-05-05
Visual Studio 2017新版發(fā)布 更強(qiáng)大!
Visual Studio 2017新版發(fā)布 更強(qiáng)大!對(duì)Visual Studio 2017感興趣的小伙伴們可以參考一下2017-05-05
visual 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-06
asp.net Mvc4 使用ajax結(jié)合分頁插件實(shí)現(xiàn)無刷新分頁
本篇文章主要介紹了 asp.net Mvc4 使用ajax結(jié)合分頁插件實(shí)現(xiàn)無刷新分頁,ajax通過回調(diào)函數(shù)把控制器返回的分部視圖內(nèi)容加載到主視圖中顯示,有興趣的可以了解一下。2017-01-01
VS2022?.NET5一鍵發(fā)布到遠(yuǎn)程騰訊云IIS服務(wù)器的詳細(xì)步驟
這篇文章主要介紹了VS2022?.NET5一鍵發(fā)布到遠(yuǎn)程騰訊云IIS服務(wù)器,首先需要添加服務(wù)器相關(guān)功能,文中通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-04-04
ASP.NET Core應(yīng)用中與第三方IoC/DI框架的整合
ASP.NET Core應(yīng)用中,針對(duì)第三方DI框架的整合可以通過在定義Startup類型的ConfigureServices方法返回一個(gè)ServiceProvider來實(shí)現(xiàn)。但是并不是那么容易的,下面通過實(shí)例給大家分享一下2017-04-04
ASP.NET WebForms實(shí)現(xiàn)全局異常捕獲與處理的最佳實(shí)踐
文章介紹了在ASP.NET WebForms中實(shí)現(xiàn)全局異常捕獲與處理的最佳實(shí)踐,包括在Global.asax中使用Application_Error、在Web.config中配置customErrors、在代碼中使用try-catch、全局異常過濾以及使用日志記錄庫等方法,感興趣的朋友一起看看吧2025-01-01

