亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        文檔生成技術(shù)研究與應(yīng)用

        2018-02-07 18:08:28邵欣欣張明會高梓峻
        軟件工程 2018年1期

        邵欣欣 張明會 高梓峻

        摘 要:本文的在線生成在當前的信息系統(tǒng)中有廣泛的應(yīng)用,基于現(xiàn)有的POI和Itext等API無法實現(xiàn)的問題進行擴展。文中研究了文檔的直接生成中的難點問題,包括復(fù)雜表格的生成、單元格的合并等;還研究了對Word和Excel的內(nèi)容進行替換的文檔生成方式,總結(jié)了適用于Word和Excel文檔的最優(yōu)生成方式。以上方法均已在項目中進行應(yīng)用,并取得了良好的效果。

        關(guān)鍵詞:文檔生成;寫入生成;自定義模板;信息系統(tǒng)

        中圖分類號:TP311 文獻標識碼:A

        Abstract:Text online generated have a wide range of applications in current information systems.Aiming at the problem of document generation in POI and Itext technology,the difficulties of generating documents are studied,including the generation of the complicated form,the cell's merger etc.Replacing content of Word and Excel is studied.The optimal generation of Word and Excel document is proposed.These methods have been applied in the project,and achieved good results.

        Keywords:document generation;written generation;custom template;information system

        1 引言(Introduction)

        在高校和企業(yè)中,報表和文檔的處理一直是必不可少的組成部分。當前文檔多以電子形式編寫和存儲,但是很多時候又要紙質(zhì)版的存檔,因此文檔的在線生成是一項必不可少的功能。例如電子商務(wù)網(wǎng)站的賬單、交易額、發(fā)票、在線合同等,高校的各類辦公和教學(xué)文檔,例如對于教師有培養(yǎng)方案、大綱、教學(xué)日歷、教學(xué)總結(jié)等,對于學(xué)生有實驗報告、畢設(shè)指導(dǎo)手冊、開題報告、譯文、畢業(yè)論文、畢業(yè)成績單、學(xué)位證明等重要的文檔。這些電子文檔往往需要復(fù)雜的形式,既包含文本和表格,又包含圖片,甚至在表格里加入圖片?;谶@樣的需求,迫切需要一套能夠簡單、實用、高效地滿足各類報表生成的API。本文就以高校的各類文檔的生成為需求,展開研究文檔生成技術(shù)。

        當前,常用的Java系列的文檔生成的擴展包主要有Itext、POI和JXLS,這幾種擴展包可以實現(xiàn)Excel、Word和PDF文件的導(dǎo)出,但是它們都存在某些弊端。Word POI生成簡單的Excel的確很優(yōu)秀,但是操作Word的功能卻不盡人意。Itext對于PDF的輸出的介紹資料較多,對于Word文檔的輸出的介紹也不多,對于復(fù)雜表格的輸出也存在不靈活等問題,而且也無法實現(xiàn)對Word文檔分欄和增加水印等功能[1]。和POI結(jié)合應(yīng)用的JXLS在使用模板生成Excel文檔方面有一定的優(yōu)勢,而這方面的文獻并不多。

        綜上所述,迫切需要一組API能夠?qū)崿F(xiàn)復(fù)雜文檔的輸出,這也正是本文要解決的問題。本文提出了一套解決方案,具有實用性強、靈活性好等特點。

        2 系統(tǒng)框架(System architecture)

        高校的文檔包含內(nèi)容較多,如何組織數(shù)據(jù)和確定數(shù)據(jù)最合適的輸出方式,都是在需求階段就需要解決的問題,基于文檔較多,數(shù)據(jù)量大的問題,首先對文檔進行歸類,確定生成方式。本文要研究的文檔主要有Word和Excel兩種輸出形式,根據(jù)內(nèi)容可采用直接生成和模板替換兩種方式。

        高校文檔生成系統(tǒng)共分為四層,包括數(shù)據(jù)采集層、數(shù)據(jù)存儲層、數(shù)據(jù)分析和輸出層。不同層級間采用文件服務(wù)的方式傳遞數(shù)據(jù)。系統(tǒng)應(yīng)用當前比較成熟的SSH框架,前臺使用JQuery和AngularJS,數(shù)據(jù)庫采用Oracle數(shù)據(jù)庫[2],詳細的系統(tǒng)架構(gòu)如圖1所示。

        3 功能實現(xiàn)(Function realization)

        3.1 寫入生成

        基于對Word POI和Itext現(xiàn)有功能的研究,確定對Itext進行改進后生成Word文檔更適合。對現(xiàn)有API進行封裝,生成兩種方案各自的擴展包,保證具備生成復(fù)雜Word和PDF文檔的方式和方法。當前的API已經(jīng)能夠?qū)崿F(xiàn)簡單的Word文檔的輸出,但是對于復(fù)雜表格的生成還無法實現(xiàn)。另外,對于生成頁眉、頁腳和水印等內(nèi)容也不夠靈活。因此,對現(xiàn)有API進行封裝,能夠?qū)崿F(xiàn)復(fù)雜表格的生成。培養(yǎng)方案、教學(xué)大綱和教學(xué)總結(jié)都采用此方式實現(xiàn)。

        項目采用對現(xiàn)有Itext的API進行封裝,封裝為”ComplexTextUtils”,此類中提供生成word文檔的基本方法,包括生成正文、簡單表格、復(fù)雜表格、水印和頁眉頁腳等。

        這部分的難點就是生成復(fù)雜的表格和生成頁眉、頁腳等內(nèi)容。

        3.1.1 復(fù)雜表格的生成

        Itext自帶的API根據(jù)表格內(nèi)容、行跨度和列跨度三個參數(shù)進行組織數(shù)據(jù),那么只要計算出行和列的跨度,就可以動態(tài)組織數(shù)據(jù),生成復(fù)雜的表格[3]。

        經(jīng)過改進的API中有多個重載的InsertComplexTable方法,用來實現(xiàn)復(fù)雜表格的顯示,需要為此方法提供至少三個參數(shù),分別為標題數(shù)組、正文數(shù)組和列數(shù),如果還有更高的要求,可以提供更多的參數(shù)。

        public void insertComplexTable(ListtitleData,ListcontentData,int column,int[]columnwidth) throws DocumentException

        那么,如何通過算法對數(shù)據(jù)的行跨度和列跨度進行計算,是需要解決的重點問題。表格數(shù)據(jù)多存放于集合中,需要對集合類的結(jié)構(gòu)進行遍歷,確定行跨度和列跨度,遍歷采用如下方法進行,考慮到章節(jié)和知識點之間的嵌套,采用循環(huán)遍歷的方式對數(shù)據(jù)進行清洗,確定每個單元和節(jié)的行跨度。在當前系統(tǒng)中集合的結(jié)構(gòu)共有三層,相當于樹的結(jié)構(gòu)是三層,對內(nèi)容進行遍歷,根據(jù)下一層節(jié)點的個數(shù),先把上一層結(jié)構(gòu)補充完成[4]。

        3.1.2 頁眉、頁腳的生成

        Itext還能夠?qū)崿F(xiàn)水印、頁碼、復(fù)雜表格、圖片、頁眉等內(nèi)容的生成,頁眉和頁腳生成效果如圖4所示。

        3.2 替換生成

        在高校管理系統(tǒng)中,有部分教學(xué)文檔格式復(fù)雜,但是內(nèi)容固定,僅需要替換和填充就可以。此類文檔適合采用替換的方式生成。教學(xué)日歷和畢業(yè)證明等文檔的格式、樣式和版式都是相同的,只是部分字段進行替換即可[5],那么對于這樣的文檔適合使用文本替換的技術(shù)實現(xiàn),替換涉及的文檔主要也是Word和Excel。

        3.2.1 Word的替換應(yīng)用POI的替換功能

        首先來看Word文檔的替換,主要應(yīng)用于生成畢業(yè)證明和學(xué)位證明。利用標簽技術(shù)來確定待替換的變量的位置[4],對于每個要替換的數(shù)據(jù)都設(shè)置為單獨的標簽,在編寫標簽需要注意的一點就是標簽不能有其他格式,必須清除無效字符,可以在文本編輯器中編寫,粘貼到Word文檔中采用POI自帶的功能,把要被替換的數(shù)據(jù)組織在HashMap中,例如:

        3.2.2 Excel的替換

        其次是Excel的替換。Excel文檔的替換主要是在教學(xué)日歷中使用,經(jīng)對比發(fā)現(xiàn)利用JXLS來實現(xiàn)內(nèi)容的替換最適合。此方法采用編寫腳本的方式,腳本中可以寫入代碼,相同格式的數(shù)據(jù)可以循環(huán)插入,把數(shù)據(jù)以類的方式組織,放在List中,例如Course類。如果Course類中包含其他的類,可以作為屬性[7]。

        4 結(jié)論(Conclusion)

        通過對Itext、POI和JXLS等文本輸出技術(shù)的研究和對比,對原有API進行改進,采用最優(yōu)的方法實現(xiàn)了文本的在線輸出,能夠滿足以多種復(fù)雜的方式輸出Word和Excel文本。本文的方式和方法已在項目中進行應(yīng)用。另外在文獻[6]—文獻[8]的App系統(tǒng)中,也進行了應(yīng)用,并取得了非常良好的效果。

        參考文獻 (References)

        [1] Bing L,Li P,Liao Y,et al.Abstractive Multi-Document Summarization via Phrase Selection and Merging[J].Computational Linguistics,2015,31(4):505-530.

        [2] Abualigah L M,Khader A T,Al-Betar M A,et al.Text feature selection with a robust weight scheme and dynamic dimension reduction to text document clustering[J].Expert Systems with Applications,2017,84(C):24-36.

        [3] Ayyar K,Han C J.System and method for computing, applying, and displaying document deltas[J].Remote Sensing of Environment,2017,118(118):339-355.

        [4] 周千明,朱欣娟.基于Aspose技術(shù)的自定義模板文檔生成方法[J]. 計 算 機 系 統(tǒng) 應(yīng) 用,2015,24(6):235-238.

        [5] 張艷偉.QT框架下的WORD文檔生成方法[J].計算機應(yīng)用與軟件,2015,32(10):120-122;150.

        [6] 付麗梅,鄧繼禹,賈躍.基于騰訊微校平臺的易學(xué)習(xí)APP設(shè)計與實現(xiàn)[J].考試周刊,2017(07):112.

        [7] 付麗梅,劉英鵬,賈躍.基于騰訊微校平臺的校園移動辦公APP設(shè)計與實現(xiàn)[J].信息系統(tǒng)工程,2017(01):156-157.

        [8] 邵欣欣,徐健晟,冀航宇.基于VR的幻房App的設(shè)計與運營分析[J].電子元器件與信息技術(shù),2017,7(01):1-5.

        作者簡介:

        邵欣欣(1980-),女,碩士,副教授.研究領(lǐng)域:軟件工程,虛擬現(xiàn)實.

        張明會(1980-),女,碩士,教授.研究領(lǐng)域:軟件工程,算法.

        高梓峻(1995-),男,本科,工程師.研究領(lǐng)域:軟件工程,軟件開發(fā).

        亚洲欧美激情在线一区| 粉嫩的极品女神尤物在线| 久久国产精品一区二区三区| 色偷偷偷久久伊人大杳蕉| 中文字幕福利视频| 亚洲一区二区三区在线中文| 中文字幕一区二区av| 无码国产色欲xxxx视频| 鲁一鲁一鲁一鲁一澡| 亚洲AV无码成人精品区H| 少妇人妻无奈的跪趴翘起| 精品国产精品国产偷麻豆| 日本少妇人妻xxxxx18| 亚洲AV无码中文AV日韩A| 被灌醉的日本人妻中文字幕| 插我一区二区在线观看| 免费一级特黄欧美大片久久网| 日韩精品有码在线视频| 日本一区二区不卡精品| 国产二级一片内射视频插放| 亚洲AV无码成人品爱| 久久精品国产亚洲av专区| 无码毛片内射白浆视频| 国产成人一区二区三区在线观看| 国产在线天堂av| 日本一区二区三区区视频| 伊人久久大香线蕉av不卡 | 91白浆在线视频| 国产av精品一区二区三区视频| 极品粉嫩嫩模大尺度无码视频| 国产精品福利视频一区| 无码熟妇人妻av在线c0930| 国产亚洲精品在线视频| 人人妻一区二区三区| 国产高清无码在线| 国产日韩精品视频一区二区三区| 国产精品亚洲专区无码不卡| 亚洲日韩精品欧美一区二区| 99RE6在线观看国产精品| 经典三级免费看片天堂| 日韩毛片免费无码无毒视频观看|