<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-35  評論-33  文章-0  trackbacks-0

        docx4j是一款在java世界處理微軟word/ppt/excel文檔的強大工具。它其實是一個半開源的產品。雖然它對WORD各種處理在API層 面進行了封裝,但是像WORD本身的拆分,合并。其作者(Jason Harrop)是單獨提出來了,封裝成了商用的JAR包來提供支持。而我在深入學習其API之后,先后將組合,拆分技術進行了實現。

        docx4j用到了個比較N的技術--JAXB.它建立了XML文件與JAVA對象互相轉換的一個橋梁。

    JAXB(Java Architecture for XML Binding) 是一個業界的標準,是一項可以根據XMLSchema產生Java類的技術。該過程中,JAXB也提供了將XML實例文檔反向生成Java對象樹的方法, 并能將Java對象樹的內容重新寫到XML實例文檔。從另一方面來講,JAXB提供了快速而簡便的方法將XML模式綁定到Java表示,從而使得Java 開發者在Java應用程序中能方便地結合XML數據和處理函數。

    WORD以XML存儲的原理:

    WordprocessingML體系結構圖


    WordML以XML的格式定義了文檔中各個部分的屬性,如頁眉,頁腳,圖片,樣式。每一種資源都其實是使用一個XML的結點來描述。舉例來說明:

    假如有這樣一個文檔

    docx4j可以將WORD直接轉換其對應的XML文檔,我們可以以第一段【開始】到【題文】那一段的XML片斷來說明。初步看,這段內容包含了若干文字,一張圖片。

    文字段:

    圖片:

    圖片的關聯資源引用定義:

    圖片資源的數據定義:

    看到NB的地方沒有,使用binarydata存儲這個圖片的數據。


    組合原理:


    拆分原理:

    原理基本如上,已經在項目中實際應用。有了這層API,你可以通過程序去生成一份試卷(類似學科網的組卷功能),或者把試卷拆分成單個的試題入庫。如有不明白的,歡迎溝通學習。

    之前生成的試卷sample:主要在基礎API之上,封裝了生成一份試卷常用的方法。其實就是內容的樣式設置及WORD組合。




    我的微信公眾號,歡迎溝通學習。
    posted on 2016-03-14 16:10 alexcai 閱讀(5561) 評論(2)  編輯  收藏

    評論:
    # re: 利用docx4j來處理word的合并與拆分[未登錄] 2016-03-18 06:54 | xin
    ooxml太繁瑣,docx4j在word層面做的不錯可惜更新太慢bug還是一堆。對于更精細的控制,為了保持穩定性,更推薦直接用COM調微軟API(server只能是windows而且有時很腦殘)
    或者期待下POI把word和ppt部分搞出來。
    反正對于復雜模型下的office文件生成,只有微軟自己的API最靠譜。(鄙視微軟)  回復  更多評論
      
    # re: 利用docx4j來處理word的合并與拆分 2016-03-18 09:25 | zuxiong
    @xin
    其實在這之前,我用JACOB 進行同樣功能的封裝,已經實現上上述功能。只在它是基于VBA的,在資源的處理層面,比如WORD的COPY,它是共享的。注定一臺機器同一時間只能處理一組WORD的拆分與合并處理。不能并行。所以后來才考慮使用DOCX4J。
      回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: MM1313亚洲精品无码久久| 久久精品免费电影| 亚洲人成人网站在线观看| a级毛片在线视频免费观看| 亚洲日韩乱码中文无码蜜桃| 啦啦啦高清视频在线观看免费| 亚洲AV无码专区在线厂| 亚洲大成色www永久网站| 青青久在线视频免费观看| 国产精品免费一区二区三区| 久久亚洲中文字幕精品有坂深雪 | 69成人免费视频| 特级做a爰片毛片免费看| 亚洲综合精品一二三区在线| 日韩视频免费在线| 久久久久国产精品免费免费不卡| 亚洲国产成人AV在线播放| 亚洲AV无码成人精品区在线观看 | 亚洲国产aⅴ成人精品无吗| 精品国产综合成人亚洲区| 免费看香港一级毛片| 日韩精品免费在线视频| 免费无遮挡无遮羞在线看 | 99999久久久久久亚洲| 亚洲精品无码久久千人斩| 免费黄网在线观看| 久久综合九色综合97免费下载| 国产成人精品久久亚洲高清不卡| 91亚洲精品视频| 国产亚洲AV夜间福利香蕉149| 成年人视频在线观看免费| 99久久国产免费中文无字幕| 一级做a毛片免费视频| 亚洲av日韩av永久在线观看| 亚洲成在人线中文字幕| 国产AV无码专区亚洲A∨毛片| 亚洲AⅤ无码一区二区三区在线| 全免费毛片在线播放| 四虎国产精品永久免费网址| 中国人免费观看高清在线观看二区 | 久久亚洲精品视频|