六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

ASP.Net完成將Word轉換PDF格式

[摘要]前言:由于一個客戶的項目中需要將WORD文檔轉換成PDF格式,故寫了本篇實站教程 需求分析:客戶的項目以B/S結構為主,提供一個WORD文件在后臺自動轉換成PDF,經過實際測試,如果該篇WORD文檔有100多頁的話,轉換需要20分鐘左右的時間(環境:CPU是奔騰M 1.6G,512M內存),整個C...

前言:由于一個客戶的項目中需要將WORD文檔轉換成PDF格式,故寫了本篇實站教程

需求分析:客戶的項目以B/S結構為主,提供一個WORD文件在后臺自動轉換成PDF,經過實際測試,如果該篇WORD文檔有100多頁的話,轉換需要20分鐘左右的時間(環境:CPU是奔騰M 1.6G,512M內存),整個CPU的占用率近乎95%~100%,此結果告訴客戶以后,客戶提議:到客戶下班后,自動轉換PDF,同時如果使用人確認要查看該PDF文檔,如果沒有轉換,提供給客戶選擇,是現在轉換成PDF,還是由服務器在客戶下班后,自動轉換。

項目功能:按需求分析要寫兩個功能

第一為:B/S結構后臺轉換,要提交給客戶選擇

第二為:Windows服務自動轉換WORD文檔到PDF

這兩個分類:核心的轉換程序都是采用線程的方式執行,只不過第一個功能是針對一個WORD文件,第二個功能針對所有未轉換的WORD文檔.

分析到現在:我們開始實戰轉換了!

一:必備工具

安裝必須的工具MS VS.Net2003,MS Office2003,Adobe Acrobat 7.0 Professional,postscript.exe,gs811w32.exe

MS VS.Net2003的安裝不說明

MS Office2003的安裝不說明

Adobe Acrobat 7.0 Professional安裝說明

運行setup.exe文件,出現輸入序列號,就運行注冊機,用鼠標在第一行刷下就可以看見序列號,復制粘貼到Adobe Acrobat 7.0 Professional安裝程序對話框,安裝到最后出現注冊時,點擊PHONE...將安裝程序中顯示的第二行序列號(第一行是剛才注冊機生成的序列號)復制粘貼到注冊機的第二行,點擊右邊的按鈕,再用鼠標刷第三行授權號就出來了,將其復制粘貼到安裝程序的最后一行,完成安裝注冊!

postscript.exe默認安裝就可以了,它是一個PDF轉換時所需要的腳本

gs811w32.exe默認安裝就可以,它其實是個PDF虛擬打印機的驅動

二:配置虛擬打印機

進入Windows的控制面板,進入打印機,點擊"添加打印機"圖標.在安裝對話框上"按一步",出現選擇打印機時,在制造商一欄中選擇"Generic",在打印機一欄中,選擇"MS Publisher Color Printer",然后一路按下一步,知道安裝結束.

三:開始寫第一個程序(腳本程序)

為什么要使用腳本程序進行轉換呢,其實實際測試過程中,使用PDF Distiller的對象引用到C#后,轉換成功,但整個PDF Distiller對象不能釋放,第二次再轉換時,就發生了錯誤,故此處使用腳本程序實現轉換.這樣我們只要在C#的程序中調用腳本程序就可以實現WORD到PDF的轉換。

宿主腳本文件名:ConvertDoc2PDF.js

腳本文件內容:

var files = WScript.Arguments;

var fso = new ActiveXObject("Scripting.FileSystemObject");

var word = new ActiveXObject("Word.Application");

var PDF = new ActiveXObject("PDFDistiller.PDFDistiller.1");

word.ActivePrinter = "MS Publisher Color Printer";

//files(0) 為WORD文檔文件名

//files(1) 為,轉換后需要保存的路徑

//調用fso.GetBaseName(files(0))后,為無路徑,無擴展名,的文件名

//files.length為文件參數的個數,使用循環可以支持多個WORD文檔的轉換

var docfile = files(0);

var psfile = files(1) + fso.GetBaseName(files(0)) + ".ps";

var pdffile = files(1) + fso.GetBaseName(files(0)) + ".pdf";

var logfile = files(1) + fso.GetBaseName(files(0)) + ".log";

try{

var doc = word.Documents.Open(docfile);

//WORD文件轉成PS文件;

word.PrintOut(false, false, 0, psfile);

doc.Close(0);

//PS文件轉成PDF文件;

PDF.FileToPDF(psfile,pdffile,"");

fso.GetFile(psfile).Delete();//刪除PS腳本文件

fso.GetFile(logfile).Delete();//刪除轉換的日志文件

word.Quit();

WScript.Echo("isuccess");//成功

WScript.Quit(0);

}

catch(x)

{

word.Quit();

WScript.Echo("isfail");//失敗

WScript.Quit(0);

}

然后測試該腳本程序

啟動MS-DOS,輸入如下命令:

c:\>cscript //nologo c:\ConvertDoc2PDF.js c:\test.doc c:\

說明:

運行成功后將看到test.pdf文檔了

c:\test.doc參數對應的是腳本程序中的files(0)

c:\參數對應的是腳本程序中的files(1)

你可以安照該腳本改寫成,支持多個參數,使用FOR循環,一次轉換多個WORD文檔,此處沒有使用多個文件轉換功能,是考慮到,該段腳本放在C#的線程中執行,這樣一來也可以轉換多個WORD文檔.


[1] [2] [3]  下一頁




主站蜘蛛池模板: 天天色播 | 亚洲欧美成aⅴ人在线观看 亚洲欧美不卡 | 在线观看亚洲 | 视频一区在线 | 四虎国内精品一区二区 | 天天看天天摸天天操 | 一区二区视频在线播放 | 欧美一级视频免费 | 亚洲精品在线免费观看视频 | 亚洲欧洲综合网 | 综合久久久 | 日韩精品欧美一区二区三区 | 日本剧情片大全免费的视频 | 日本香蕉一区二区在线观看 | 日韩激情视频在线观看 | 香蕉网站狼人久久五月亭亭 | 五月天丁香婷婷综合久久 | 一二三四视频中文字幕在线看 | 日韩免费在线观看 | 欧美特黄特色aaa大片免费看 | 一级做a爰片久久毛片 | 亚洲第一精品夜夜躁人人爽 | 亚洲欧美国产精品专区久久 | 亚洲欧美日韩中字综合 | 日本邪恶全彩 | 性色a v 一区 | 日韩第四页| 日本免费网站在线观看 | 亚洲va欧美va国产va天堂 | 中文在线第一页 | 四虎精品永久在线 | 一区二区三区视频在线观看 | 日本久操| 日本免费v片一二三区 | 欧美综合区自拍亚洲综合 | 色综合久久天天影视网 | 午夜免费视频 | 在线亚洲一区 | 特级淫片国产免费高清视频 | 日本男人的天堂 | 午夜精品久久久久久毛片 |