日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
ASP.NET實現(xiàn)WORD文件自動轉(zhuǎn)換PDF

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

創(chuàng)新互聯(lián)建站服務項目包括壽縣網(wǎng)站建設(shè)、壽縣網(wǎng)站制作、壽縣網(wǎng)頁制作以及壽縣網(wǎng)絡營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,壽縣網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務的客戶以成都為中心已經(jīng)輻射到壽縣省份的部分城市,未來相信會繼續(xù)擴大服務區(qū)域并繼續(xù)獲得客戶的支持與信任!

項目功能:按需求分析要寫兩個功能
***為:B/S結(jié)構(gòu)后臺轉(zhuǎn)換,要提交給客戶選擇
第二為:Windows服務WORD文件自動轉(zhuǎn)換PDF

這兩個分類:核心的轉(zhuǎn)換程序都是采用線程的方式執(zhí)行,只不過***個功能是針對一個WORD文件,第二個功能針對所有未轉(zhuǎn)換的WORD文件

分析到現(xiàn)在:我們開始實戰(zhàn)轉(zhuǎn)換了!

一:必備工具

安裝必須的工具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文件,出現(xiàn)輸入序列號,就運行注冊機,用鼠標在***行刷下就可以看見序列號,復制粘貼到Adobe Acrobat 7.0 Professional安裝程序?qū)υ捒?,安裝到***出現(xiàn)注冊時,點擊PHONE...將安裝程序中顯示的第二行序列號(***行是剛才注冊機生成的序列號)復制粘貼到注冊機的第二行,點擊右邊的按鈕,再用鼠標刷第三行授權(quán)號就出來了,將其復制粘貼到安裝程序的***一行,完成安裝注冊!
◆postscript.exe默認安裝就可以了,它是一個PDF轉(zhuǎn)換時所需要的腳本
◆gs811w32.exe默認安裝就可以,它其實是個PDF虛擬打印機的驅(qū)動

二:配置虛擬打印機

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

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

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

宿主腳本文件名:ConvertDoc2PDF.js

腳本文件內(nèi)容:

 
 
 
  1. var files = WScript.Arguments;
  2. var fso = new ActiveXObject("Scripting.FileSystemObject");
  3. var word = new ActiveXObject("Word.Application");
  4. var PDF = new ActiveXObject("PDFDistiller.PDFDistiller.1");
  5. word.ActivePrinter = "MS Publisher Color Printer";
  6. //files(0) 為WORD文檔文件名
  7. //files(1) 為,轉(zhuǎn)換后需要保存的路徑
  8. //調(diào)用fso.GetBaseName(files(0))后,為無路徑,無擴展名,的文件名
  9. //files.length為文件參數(shù)的個數(shù),使用循環(huán)可以支持多個WORD文檔的轉(zhuǎn)換
  10. var docfile = files(0);
  11. var psfile = files(1) + fso.GetBaseName(files(0)) + ".ps";
  12. var pdffile = files(1) + fso.GetBaseName(files(0)) + ".pdf";
  13. var logfile = files(1) + fso.GetBaseName(files(0)) + ".log";
  14. try{
  15. var doc = word.Documents.Open(docfile);
  16. //WORD文件轉(zhuǎn)成PS文件;
  17. word.PrintOut(false, false, 0, psfile);
  18. doc.Close(0);
  19. //PS文件轉(zhuǎn)成PDF文件;
  20. PDF.FileToPDF(psfile,pdffile,"");
  21. fso.GetFile(psfile).Delete();//刪除PS腳本文件
  22. fso.GetFile(logfile).Delete();//刪除轉(zhuǎn)換的日志文件
  23. word.Quit();
  24. WScript.Echo("isuccess");//成功
  25. WScript.Quit(0);
  26. }
  27. catch(x)
  28. {
  29. word.Quit();
  30. WScript.Echo("isfail");//失敗
  31. WScript.Quit(0);
  32. }

然后測試該腳本程序

啟動MS-DOS,輸入如下命令:c:\>cscript //nologo c:\ConvertDoc2PDF.js c:\test.doc c:\

說明:

運行成功后將看到test.pdf文檔了
c:\test.doc參數(shù)對應的是腳本程序中的files(0)
c:\參數(shù)對應的是腳本程序中的files(1)

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

四:使用C#調(diào)用ConvertDoc2PDF.js腳本

新建一個C#的WINDOWS應用程序,添加一個按鈕button1添加一個函數(shù),函數(shù)名StartConvertPDF

 
 
 
  1. publicvoidStartConvertPDF()
  2. {
  3. Processproc=newProcess();
  4. proc.StartInfo.FileName="cmd.exe";
  5. proc.StartInfo.WorkingDirectory=@"c:\";
  6. proc.StartInfo.CreateNoWindow=true;
  7. proc.StartInfo.UseShellExecute=false;
  8. proc.StartInfo.RedirectStandardInput=true;//輸入重定向
  9. proc.Start();
  10. proc.StandardInput.WriteLine(@"cscript//nologoc:\ConvertDoc2PDF.jsc:\test.docc:\");
  11. proc.StandardInput.WriteLine("exit");
  12. proc.WaitForExit();
  13. }

結(jié)束語:

以上介紹ASP.NET實現(xiàn)WORD文件自動轉(zhuǎn)換PDF,Adobe Acrobat 7.0 Professional,postscript.exe,gs811w32.exe這三個文件可以在itbaby.jss.cn下載,都包含在同一個RAR的壓縮文件中了。

itbaby.jss.cn是動態(tài)域名,主機在作者家里,如果網(wǎng)站不能訪問,說明電腦沒有開,請稍后幾天再試。


標題名稱:ASP.NET實現(xiàn)WORD文件自動轉(zhuǎn)換PDF
文章網(wǎng)址:http://m.5511xx.com/article/dhdspoh.html