999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于C#語言實現word文檔轉pdf文檔

2018-01-06 01:05:51茍博文
電腦知識與技術 2017年35期
關鍵詞:語言

茍博文

摘要:該文主要探討基于C#語言實現將word文檔轉換為pdf文檔,并對分析了其轉換性能和在小微企業數據化決策系統中的應用問題。

關鍵詞:C#語言;word文檔;pdf文檔

中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2017)35-0133-03

Implementation of Word Document to PDF Document Based on C# Language

GOU Bo-wen

(Department of information science and technology, School of tourism and culture, Yunnan University, Lijiang 674100, China)

Abstract: This paper mainly discusses the conversion of word document to PDF document Based on C# language, and analyzes its conversion performance and application in small and micro enterprise data decision making system.

Key words: C# language; word document; PDF document

在計算機技術的高速發展得當今,網上資料的購買,下載已經變得越來越普遍,但是很多時候用戶不知道自己下載的數據或者資料是否符合自己所需,用戶只能憑資料標題臆想資料的內容,為了解決這個問題,實現網絡在線的預覽資料內容,這樣極大的讓用戶確定了這份資料是否是自己想要的,然后用戶就可以根據自己意愿來確定是否購買并下載這份數據。目前網絡上下載的比較多的就是word文檔,但是網頁上無法直接放置word文檔,所以用戶無法再網絡上預覽,必須將word文檔轉換為pdf或者html文檔,才能放置在網頁上供用戶預覽,所以本文所決絕的問題有很大的使用價值。

1 決策支持系統的技術難題

在此系統中,因為采用了預覽后付費下載模式,所以這給編碼實現帶來一個一個難題,因為分析師分析完后,會存成一份word文件,但是網頁是不能直接顯示word文件的,所以需要將word文件轉為pdf文件或者html等能在網頁加載的文件,所以需要將word文件轉換成pdf或者html文件。這樣用戶就可以直接在網頁上預覽一部分。本次實現基于C#語言操作word文檔將其轉換為pdf正是解決了這個問題。

2 word轉PDF現狀

將word文件轉換為PDF目前在不同的編程語言下有不同的處理方式,下面就舉java和C#這兩種編程語言為例,來談談這個問題。

首先是java語言操作word轉pdf,java與語言作為一門面向對象語言是十分強大的,如果要是使用java語言操作word轉pdf的話,有三種方法,第一種是首先下載Itext的相關的包和poi相關的包,首先利用poi的包中的類將word文件轉換為Html文件,在這個過程中要注意word文件中的圖片保存問題,還有老版以doc結尾的word文件和新版以docx結尾的文件的轉換方式不同,需要編寫不同的代碼,其次再利用Itext相關的包將html文件轉換為PDF文件,在這個過程中要注意html代碼中的endTag問題,還有中文問題,因為默認的Itext是不支持中文的,盡管你這些都注意了,你轉換出來的pdf文件和原word文件的格式還是會有偏差,而且明顯,第二種是利用openoffice服務和jodconverter包通過操作openOffice服務轉換,缺點:會占用100M左右的內存,比較消耗硬件資源,復雜格式容易出錯。第三種jacob + msOfficeWord + SaveAsPDFandXPS格式保存完美,但是效率較慢。

其次是C#語言操作word轉pdf文件,應為C#語言是微軟主導的編程語言,而且office也是自家的產品,所以在這方面有天然的優勢,只需添加Microsoft.Office.Interop.Word的引用即可實現word轉pdf,而且不存在doc結尾的文件和docx結尾的文件兼容的問題,而且格式保存較好。而且轉換一份8頁的有多圖片和表格word文檔只需3s左右。

3 基本接口

首先在word轉pdf中,有這么幾個接口:WordToPDF_auto(string sourcePath, string targetPath),WordToPDF_manual(String sourcePath,String targetPath,int startPage,int endPage),isWord(String Source)。

3.1 WordToPDF_auto(string sourcePath, string targetPath)接口

這個接口就是當用戶輸入word的路徑,和要保存的文件路徑,然后就會將word文檔全部轉換為pdf文檔。

3.2 WordToPDF_manual(String sourcePath,String targetPath,int startPage,int endPage)接口

這個接口是用戶只需輸入word文檔的源路徑和輸出pdf的目標路徑和轉換的開始頁和結束頁,就將指定的word開始頁到word結束頁的內容轉換為pdf。

3.3 isWord(String sourcePath)接口

這個接口是是根據用戶輸入的文檔路徑來讀取文件并判斷文件是否是word文件。

4 基本處理邏輯

4.1 Word轉pdf(自動)的處理邏輯

1) 在程序里添加微軟的和word相關的com組件。

2) 然后在程序里增Microsoft.Office.Interop.Word的引用。

3) 首先將系統的word進程殺掉。

4) 然后更具用戶輸入的word文件源路徑來判斷文件的后綴是否為doc或者docx來判斷文件是否是word文件。

5) 然后創建Microsoft.Office.Interop.Word.Application對象,根絕這個對象來創建Document對象,然后使調用計算word的頁數如果文檔頁數低于1頁直接返回false,如果大于一頁,則調用document.ExportAsFixedFormat(targetPath, WdExportFormat.wdExportFormatPDF)方法將文檔轉換成pdf文檔到目標路徑。如果轉換失敗就會打印異常信息。

6) 最后再調用Document對象的close()方法關閉Document和調用Microsoft.Office.Interop.Word.Application。

4.2 Word轉pdf(手動)的處理邏輯

手動控制轉換的就是在自動的基礎上增加了用戶對轉換內容的控制,可以控制轉換的起始頁和結束頁,還增加了用戶輸入的起始頁和結束頁的判斷。判斷輸入的起始頁是否大于文檔的總頁數,如果大于發揮false,否則再繼續判斷用戶輸入法人結束頁是否大于文檔的中頁數,如果大于返回false。

5 轉換效率分析

5.1 自動轉換效率分析

為了知道自動轉換效率,做了一個轉換測試,給定一個800多KB的包含有比較復雜的word像是的文件,來通過此程序進行轉換測試,分別采集了10次轉換,50次轉換,和100次轉換的數據如下表。

經過測試時發現轉換一份800多kb的有復雜格式和圖片的word文件,所需的時間穩定在3s左右,建議使用時分析師在上傳后立即轉換,用戶在查看是就可以直接查看pdf文件,符合系統的需要。

5.2 手動轉換效率分析

為了知道手動轉換的效率,分別做了10次轉換,50次轉換和100次轉換的測試并采集到其數據如表4。

由這些數據可以看出,轉換效率穩定保持在2.7秒左右符合系統的需要。

6 實際轉化控制

在項目中因為使用的是預覽模式,所以在系統中需要使用手動轉換,即控制轉換的頁數,只轉換為客戶一部分預覽,如果客戶需要查看全部,則可付費后直接下載word文檔。

但是由于word文檔轉pdf文檔需要耗費大量的硬件資源所以在實際應用中不得不做好以下幾點:

1) 由于word文檔轉pdf文檔需要消耗大量硬件資源,建議提高硬件配置。

2) 如果多人同時預覽,用戶的等待時間就比較長,建議在分析師上傳word文件就立即轉換,留出足夠的轉換時間。

3) 做好文件轉換后的文件資源釋放和word線程管理,防止轉換效率變低。

7 結束語

本文提出的采用基于C#語言的實現word文檔轉pdf文檔的設計,解決了word文檔的內容在網頁預覽,而且還保留了word文檔的樣式,有利于網頁在線瀏覽資料的發展,而且會節省用戶大量的時間和金錢,具有很大的社會價值。

參考文獻:

[1] 微軟開發者文檔[EB/OL]. (2017-11-10). https://msdn.microsoft.com/library/microsoft.office.tools.word.document.exportasfixedformat(v=vs.100).aspx.

[2] karli Watson. Christian Nagel C#入門經典[M]. 北京: 清華大學出版社, 2006.

[3] RB Whitaker The C# Player's Guide[Z]. Starbound Software, 2012.

猜你喜歡
語言
詩之新,以語言創造為基
中華詩詞(2023年8期)2023-02-06 08:51:28
語言是刀
文苑(2020年4期)2020-05-30 12:35:30
讓語言描寫搖曳多姿
多向度交往對語言磨蝕的補正之道
累積動態分析下的同聲傳譯語言壓縮
日常語言與播音語言
新聞傳播(2016年10期)2016-09-26 12:15:04
語言技能退化與語言瀕危
我有我語言
論語言的“得體”
語文知識(2014年10期)2014-02-28 22:00:56
Only Words慎用你的語言
主站蜘蛛池模板: 国产精品一区在线观看你懂的| 亚洲一区二区三区中文字幕5566| 欧美在线三级| 少妇高潮惨叫久久久久久| 成人午夜网址| 91亚洲免费视频| a亚洲视频| 漂亮人妻被中出中文字幕久久| 精品一区国产精品| 日本亚洲成高清一区二区三区| 欧美成人日韩| 成人a免费α片在线视频网站| 在线视频精品一区| 波多野结衣一级毛片| 亚洲综合在线最大成人| www.亚洲一区二区三区| 亚洲天堂视频网| 77777亚洲午夜久久多人| 毛片基地美国正在播放亚洲| 久久午夜夜伦鲁鲁片无码免费| 天堂在线亚洲| 亚洲高清日韩heyzo| 久久毛片网| 超清无码一区二区三区| 亚洲成av人无码综合在线观看| 日韩精品一区二区深田咏美| 国产亚洲高清在线精品99| 久久综合色播五月男人的天堂| 视频二区亚洲精品| 免费国产高清视频| 五月婷婷亚洲综合| 欧美精品色视频| 99视频在线精品免费观看6| 日本免费高清一区| 欧美日韩中文国产va另类| 国产情侣一区二区三区| 成人字幕网视频在线观看| 久久91精品牛牛| 亚洲欧美日本国产专区一区| 97人人模人人爽人人喊小说| www成人国产在线观看网站| 国产精品综合色区在线观看| 无码人妻免费| 亚洲精品欧美日韩在线| 精品视频在线观看你懂的一区| 欧美午夜视频在线| 国产网站免费看| 国产乱子伦一区二区=| 欧美一级大片在线观看| 国产在线第二页| 伊人精品视频免费在线| a亚洲天堂| 亚洲精品国产日韩无码AV永久免费网 | 综合成人国产| 99人体免费视频| 91精品啪在线观看国产91九色| 久久99国产乱子伦精品免| 91精品最新国内在线播放| 女人18毛片水真多国产| 九九热免费在线视频| 国产在线观看91精品| 国产精品hd在线播放| 99成人在线观看| 真实国产精品vr专区| 国产亚洲高清在线精品99| 一本一本大道香蕉久在线播放| 亚洲专区一区二区在线观看| 欧美日韩中文国产va另类| 欧美精品成人一区二区在线观看| 欧美在线视频a| 精品国产自在在线在线观看| 欧美精品H在线播放| 熟妇人妻无乱码中文字幕真矢织江| 一本无码在线观看| 中美日韩在线网免费毛片视频| 美女视频黄频a免费高清不卡| 国产精品成人AⅤ在线一二三四| 好吊妞欧美视频免费| 成人在线观看一区| 亚洲色图另类| 免费又爽又刺激高潮网址 | 人妻丝袜无码视频|