楊權(quán)
基于OpenOffice服務(wù)對新聞編輯方式的改進
楊權(quán)
(湖南省婦幼保健院信息中心,長沙 410000)
為了減少新聞編輯人員的勞動量、實現(xiàn)醫(yī)院不同系統(tǒng)環(huán)境的電腦能在線顯示醫(yī)院新聞的目標(biāo),現(xiàn)提出一種新的新聞編輯方式:利用OpenOffice的文檔轉(zhuǎn)換服務(wù)和FTP文件上傳服務(wù),新聞編輯人員上傳包含新聞內(nèi)容的文檔就能發(fā)布新聞。實際應(yīng)用表明,新聞編輯人員通過上傳新聞文檔再簡單編輯就可以發(fā)布新聞;只要電腦安裝有瀏覽器,醫(yī)院用戶就能在線瀏覽新聞。這簡化新聞編輯操作流程,減輕新聞編輯人員的工作量,增強用戶瀏覽新聞的體驗度。
OpenOffice;新聞編輯;FTP上傳文件;發(fā)布新聞
目前醫(yī)院新聞主要分為兩類:一類是對醫(yī)院內(nèi)部宣傳的新聞,一類是對醫(yī)院外部宣傳的新聞。發(fā)布針對醫(yī)院內(nèi)部的新聞是使用醫(yī)院OA的一個“新建新聞”功能進行操作:首先輸入新聞標(biāo)題,然后將包含新聞內(nèi)容的Word文檔以附件的形式上傳。新聞發(fā)布成功后,醫(yī)院各類人員如果要查看新聞,可以進行在線閱讀或下載后閱讀;但是在線閱讀存在許多問題:操作系統(tǒng)必須安裝Microsoft Office軟件、不能閱讀高版本的Word文檔、要求使用特定的瀏覽器等,這給在線閱讀帶來諸多不便。發(fā)布針對醫(yī)院外部的新聞則使用醫(yī)院官網(wǎng)的后臺管理端的“發(fā)布內(nèi)容”功能進行發(fā)布,需要輸入新聞標(biāo)題、摘要、內(nèi)容等,其中新聞內(nèi)容是在富文本編輯器(如CKEditor)里編寫,如果要上傳圖片則使用富文本編輯器的圖片功能進行上傳。這種新聞編輯方式要求新聞編輯人員將新聞內(nèi)容從Word文檔中復(fù)制到富文本編輯器里面,圖片也需要另外上傳。如果要發(fā)布一篇包含多張圖片的新聞,則需要多次上傳圖片,這增加了工作人員的工作量,產(chǎn)生不必要的重復(fù)勞動。
為了改善目前這種困境,新聞編輯的改進方案利用OpenOffice的文檔轉(zhuǎn)換服務(wù),實現(xiàn)上傳包含新聞內(nèi)容的Word格式文檔后自動在客戶端(即瀏覽器,后文不再說明)界面中顯示新聞標(biāo)題、摘要、內(nèi)容等,確認(rèn)提交后即可完成新聞發(fā)布。
OpenOffice是一個功能強大的跨平臺辦公套件[1],可以在Windows、Linux、Solaris等操作系統(tǒng)上運行;OpenOffice采用開放的OpenDocument標(biāo)準(zhǔn)作為數(shù)據(jù)交換標(biāo)準(zhǔn)[1];服務(wù)器在安裝了OpenOffice和OpenOffice SDK軟件包后,應(yīng)用程序借助JODConverter包(一種基于Java的OpenDocument文件轉(zhuǎn)換器),調(diào)用OpenOf?fice文檔轉(zhuǎn)換服務(wù)可以將Word、Excel、PowerPoint等格式文檔轉(zhuǎn)換為PDF、HTML等格式文檔。
2.1 客戶端操作流程設(shè)計
新聞發(fā)布管理員登錄新聞發(fā)布系統(tǒng),在“新聞發(fā)布”界面中,管理員可以選擇新聞編輯方式:直接編輯或從本地上傳文件。直接編輯指目前常見的新聞編輯方式,需要操作人員手工輸入新聞標(biāo)題、摘要、內(nèi)容等,選擇文章縮略圖以及其他操作以完成新聞發(fā)布;從本地上傳文件指從本地電腦中選擇已經(jīng)編輯好的新聞文檔(如Word格式文檔),然后上傳到新聞發(fā)布系統(tǒng)服務(wù)端;上傳完成后,界面中自動顯示文章標(biāo)題、摘要、內(nèi)容和縮略圖(文檔中包含圖片才會顯示縮略圖)。如果是以本地上傳文件的形式發(fā)布新聞,考慮到自動顯示的內(nèi)容的格式存在偏差,因此,操作人員可以再次編輯自動顯示的文章內(nèi)容,也可以重新上傳文章縮略圖,以保證新聞?wù)鎸峓2]。整個操作流程如圖1所示:
圖1 客戶端操作流程圖
2.2 服務(wù)端處理流程設(shè)計
服務(wù)端接收到客戶端上傳新聞文檔請求后,首先保存文檔到Web服務(wù)器中的一個臨時目錄下;然后調(diào)用Web服務(wù)器上的OpenOffice服務(wù),將新聞文檔轉(zhuǎn)換為html格式文檔;其次,讀取HTML格式文檔中的內(nèi)容并進行一些html格式清理,同時獲取文檔中的圖片地址并更改圖片地址指向;第三,將文檔轉(zhuǎn)換過程中生成的圖片上傳到FTP服務(wù)器上的一個臨時目錄中;第四,刪除Web服務(wù)器臨時目錄中保存的新聞文檔、生成的html文檔和轉(zhuǎn)換過程中生成的圖片;第五,將ht?ml文檔中的內(nèi)容以字符串的形式返回給客戶端。整個處理流程如圖2所示。
客戶端采用BootStrap框架,它是目前最流行的前端開發(fā)框架[6]。在客戶端的新聞發(fā)布界面中,需要設(shè)置一個<input type="file"name="newsfile"/>標(biāo)簽實現(xiàn)選擇文件的功能;在整個處理過程中為了迅速地完成各種腳本功能[3],需要使用jQuery技術(shù);由于用戶需要在當(dāng)前頁面的富文本編輯器中看到新聞文件的內(nèi)容,因此,需要使用AJAX技術(shù)實現(xiàn)異步提交;還需要JavaS?cript技術(shù)來獲取富文本編輯器對象以及設(shè)置編輯器里面的內(nèi)容,即:
var oEditor=CKEDITOR.instances.content;
oEditor.setData("要放入到編輯器的內(nèi)容");
圖2 服務(wù)端處理流程圖
為了實現(xiàn)將選擇的新聞文件構(gòu)造成Form表單提交給服務(wù)端,可以使用FormData上傳文件[4],具體的關(guān)鍵代碼如下所示:
服務(wù)端采用基于Java的Spring框架[5],服務(wù)端所在服務(wù)器(以下簡稱服務(wù)器)必須安裝OpenOffice、Ope?nOffice SDK軟件,以提供文檔轉(zhuǎn)換服務(wù);服務(wù)端需要導(dǎo)入JODConverter中的jar包以實現(xiàn)調(diào)用文檔轉(zhuǎn)換服務(wù),導(dǎo)入Apache commons net軟件包中的jar包以實現(xiàn)文件上傳。處理過程分為六步:首先,將HttpServletRe?quest請求轉(zhuǎn)換為MultipartHttpServletRequest請求;然后,從MultipartHttpServletRequest請求中獲取文件參數(shù)并轉(zhuǎn)換為CommonsMultipartFile;其次,將Commons?MultipartFile中的字節(jié)數(shù)據(jù)以文件形式保存到服務(wù)器的一個臨時目錄下;第四,調(diào)用JODConverter包中Doc?umentConverter類的convert方法將新聞文件轉(zhuǎn)換為Html文件,新聞文件里的圖片在轉(zhuǎn)換過程中會自動以jpg格式文件保存在臨時目錄下;第四,讀取HTML文件中的內(nèi)容到字符變量中,清理字符變量里HTML多余的標(biāo)簽,同時更改圖片地址指向;第五,調(diào)用FTP上傳工具類將臨時目錄下的jpg格式圖片上傳到FTP服務(wù)器上;第六,將字符變量的數(shù)據(jù)返回給客戶端。文檔轉(zhuǎn)換具體關(guān)鍵代碼如下:
文件上傳的關(guān)鍵代碼可參考Apache Commons Net軟件包中的例子,也可訪問Apache Commons官網(wǎng)。
客戶端上傳新聞文檔成功后的顯示效果如圖3所示:
圖3 客戶端顯示效果
使用普通方式和改進的方式發(fā)布新聞在操作步驟、操作時間等各項參數(shù)對比結(jié)果見表1所示。
表1 普通方式和改進的方式發(fā)布新聞各項參數(shù)對比結(jié)果
由表1可知,使用改進的方式發(fā)布新聞可以簡化操作步驟、節(jié)省操作時間,同時也能解決OA新聞在線預(yù)覽需要特定軟件配置的問題。
本文詳細(xì)闡述了基于OpenOffice服務(wù)改進新聞編輯方式的設(shè)計思路和實現(xiàn)方法。實際應(yīng)用表明,使用這種上傳新聞文檔發(fā)布新聞的方式來發(fā)布新聞,避免了發(fā)布一篇帶多張圖片的新聞而需要多次上傳圖片的弊端,簡化新聞發(fā)布操作,減少了工作人員的工作量;能夠滿足上傳文檔發(fā)布新聞的需求,可以推廣應(yīng)用于發(fā)布含有文字和圖片的網(wǎng)絡(luò)新聞[2]。但是,OpenOffice服務(wù)無法轉(zhuǎn)換經(jīng)過WPS編輯過的Word文檔、不能將PDF格式的文檔轉(zhuǎn)換為HTML文檔,這些問題有待后續(xù)進一步研究。
[1]劉柱垣.簡簡單單用OpenOffice寫書[EB/OL].https://wenku.baidu.com/view/791d7d29647d27284b735192.html,2007.
[2]李良榮著.新聞學(xué)概論[M].出版地(上海):復(fù)旦大學(xué)出版社,2001:22-323.
[3]張子秋著.jQuery風(fēng)暴-完美用戶體驗[M].出版地(北京):電子工業(yè)出版社,2011.
[4]ziv.zjc.FormData對象的使用[EB/OL].https://developer.mozilla.org/zh-CN/docs/Web/API/FormData/Using_FormData_Objects,2017.
[5]郭克華著.JavaEE程序設(shè)計與應(yīng)用開發(fā)[M].出版地(北京):清華大學(xué)出版社,2011.
[6]徐濤著.深入理解Bootstrap[M].出版地(北京):機械工業(yè)出版社,2014.
Improvement of News Editing Method Based on OpenOffice
YANG Quan
(The Maternal and Child Health Hospital of Hunan Province,Changsha 410000)
In order to reduce the workload of news editor,achieve the goal that the computer in the hospital under different system can show hospital news online,proposes a new method of editing news,news editor can publish news by uploading news document with the help of the service of OpenOffice and FTP.The practical application shows that news editor can publish news after uploading news document,editing simply,users in the hospital can skim news online as long as the computer installed the browser software.It simplifies the work step of editing news,reduces the workload of news editor,and strengthens the experience of skimming news.
OpenOffice;Edit News;FTP Upload File;Publish News
1007-1423(2017)24-0081-04
10.3969/j.issn.1007-1423.2017.24.019
楊權(quán)(1989-),男,湖南懷化人,本科,助理工程師,研究方向為移動應(yīng)用
2017-05-15
2017-08-16