`
caicai1230231
  • 浏览: 22967 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

利用docx4j来处理word的合并与拆分

阅读更多

    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组合。



0
4
分享到:
评论

相关推荐

    Word2021怎么合并和拆分单元格.docx

    Word2021怎么合并和拆分单元格.docx

    word2021中合并、拆分单元格.docx

    word2021中合并、拆分单元格.docx

    word2021中合并、拆分单元格_1.docx

    word2021中合并、拆分单元格_1.docx

    Word助手(项目源码下载)-Python项目开发案例集锦08

    Python Word助手项目是一个使用Python编程语言开发的应用程序,旨在提供各种与文档处理相关的功能和工具,帮助用户更高效地处理和操作Word文档。 以下是Python Word助手项目可能包含的一些主要功能: 创建和编辑...

    根据模板,freemarker、xDoc、POI三种方式生成Word文档(含jar包)

    通过三种不同的方式(freemarker+jfreechart、xDoc、POI),根据模板创建Word文件。可以动态修改Word中表格(table)、图表(chart)等数据。导入工程后,可直接运行xxxDemo文件,查看文档生成效果。详见压缩包中的...

    PDF工具箱PDF转word,PDF转图片,PDF转文本

    同时,pdf shaper 还采用了易于使用的界面与高DPI显示器兼容,除对PDF文档的处理外,还能够处理RTF和标准TXT文件,MS Word DOC和DOCX文档以及各种图像类型,绝对是您高效办公,提高工作效率必不可少的电脑软件。

    《计算机应用基础》1-3次作业.docx

    不能合并和拆分单元格 *22.某单位的人事管理程序属于:A.应用软件 *23.在PowerPoint中含有多个对象的幻灯片中,选定某对象,按下"幻灯片放映"菜单下的"自定义动画"选项,设置"飞入"效果后,则A.该对象放映效果为飞入...

    北中医计算机应用基础1—4次作业参考.docx

    不能合并和拆分单元格 *22.某单位的人事管理程序属于:A.应用软件 *23.在PowerPoint中含有多个对象的幻灯片中,选定某对象,按下"幻灯片放映"菜单下的"自定义动画"选项,设置"飞入"效果后,则A.该对象放映效果为飞入...

    《计算机应用基础》1-6次作业.docx

    不能合并和拆分单元格 *22.某单位的人事管理程序属于:A.应用软件 *23.在PowerPoint中含有多个对象的幻灯片中,选定某对象,按下"幻灯片放映"菜单下的"自定义动画"选项,设置"飞入"效果后,则A.该对象放映效果为飞入...

    会员获取方法.docx

    WPS 稻壳无限次 pdf转word PPT模板PDF转 文档修复

    办公精灵(办公室文档批量处理好帮手)

    批量将PDF拆分,例如某文件转成PDF为10页,按每3页一个文件,可拆分成4个文件,页数分别为3、3、3、1页 四、合并PDF:支持以下格式转成PDF,并合并为一个文件 *.doc;*.docx;*.wps;*.xls;*.xlsx;*.csv;*.et;*.ppt;*....

    通过Python实现Office自动化.zip

    4. 提取不同PDF文档中需要的页面并合并为新的PDF文件 5. 用Python操作Word批量生成邀请函 6. 用Python给PDF批量加密 7. 用Python操作Word批量生成合同 8. 暴力破解PDF密码 9. 用Python自动生成Excel档每日出货清单 ...

    办公精灵V1.2.zip

    一、批转PDF 1、支持以下格式转成PDF *.doc;*.docx;*.wps;*.xls;*.xlsx;*.csv;*.et;*.ppt;...批量将excel拆分和合并,根据sheet表进行拆分为多个excel文件或根据excel的sheet合并为一个excel文件。

    java包 spire.doc.free-5.2.0.0.jar 包下载

    spire.doc.free-5.2.0.jar是一款专业的Java DOC组件,用于读取、处理和输出Microsoft Word文档(DOC,DOCX,RTF等)。 spire.doc.free-5.2.0.jar是免费的版本,在使用上有一些限制,例如只支持读取和创建文档,但不...

    计算机应用基础第三章测试答案.doc

    A.Word只能以".docx"的类型来保存 B.Word可以将一篇文档保存在不同的位置 C.Word可以将一篇文档以不同的名称保存 D.若某一文档是第一次保存,Word会打开"另存为"对话框 正确答案: A 13.设置首字下沉格式可以使...

    PDF转换器软件TalkHelper PDF Converter OCR.rar

    4:从PDF文件中拆分、合并、提取页面:通过TalkHelper PDF Converter OCR用户可以轻松地将任何PDF文件拆分、合并为一个或多个PDF文件,用户还可以从现有PDF文件中提取页面并将其保存为新的PDF文件。

    《计算机应用基础》第05章在线测试.docx

    B、不能合并和拆分单元格 《计算机应用基础》第05章在线测试全文共3页,当前为第3页。 《计算机应用基础》第05章在线测试全文共3页,当前为第3页。 《计算机应用基础》第05章在线测试全文共3页,当前为第3页。 ...

    Release20210507.zip

    批量将PDF拆分,例如某文件转成PDF为10页,按每3页一个文件,可拆分成4个文件,页数分别为3、3、3、1页 四、合并PDF:支持以下格式转成PDF,并合并为一个文件 *.doc;*.docx;*.wps;*.xls;*.xlsx;*.csv;*.et;*.ppt;*....

    DeftPDF-crx插件

    使用DeftPDF,您可以处理多种文件类型:-PDF-Microsoft Office:Docx,Doc,Excel,PPT-图片:JPG,PNG,TIFF-扫描:OCR可用于将PDF中的数据提取到可编辑文档中,如果有任何问题,请通过support@deftpdf.com与我们...

    PDFBEAR - Convert, Merge, and Compress PDF-crx插件

    语言:English 您的#1选择要转换,合并和压缩PDF轻松。 100%免费!... - Word(DocX和Doc),Excel(XLS&XLSX),PowerPoint(PPT&PPTX) - JPG,TIFF,GIF,PNG,BMP,PBM●很容易使用PDFBear的Chro

Global site tag (gtag.js) - Google Analytics