`
53873039oycg
  • 浏览: 841980 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

[简单]docx4j插入段落

阅读更多

     docx4j可以往文档中插入段落,使用起来和往List中插入元素一样,只要注意下下标位置就可以了,如第一次往下标5的地方插入段落后,模板中下标为8的变成了下标9。

     举个例子,模板如下:

     

     往模板中插入段落和表格

     

		String inputfilepath = "e:/test_tmp/0904/test_p.docx";
		WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(new java.io.File(inputfilepath));
		MainDocumentPart documentPart = wordMLPackage.getMainDocumentPart();
		String titleStr = "测试插入段落";
		P p = Docx4j_Helper.factory.createP();
		String rprStr = "<w:rPr xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\"><w:rFonts w:hint=\"eastAsia\" w:ascii=\"Times New Roman\" w:hAnsi=\"Times New Roman\" w:eastAsia=\"宋体\"/><w:b/><w:color w:val=\"333333\"/><w:sz w:val=\"32\"/><w:szCs w:val=\"32\"/></w:rPr>";
		RPr rpr = (RPr) XmlUtils.unmarshalString(rprStr);
		setParagraphContent(p, rpr, titleStr);
		documentPart.getContent().add(5, p);

		String tblPrStr = "<w:tblPr xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\"><w:tblW w:w=\"8522\" w:type=\"dxa\"/><w:tblBorders><w:top w:val=\"single\"  w:sz=\"4\" w:space=\"0\"/><w:left w:val=\"single\"  w:sz=\"4\" w:space=\"0\"/><w:bottom w:val=\"single\"  w:sz=\"4\" w:space=\"0\"/><w:right w:val=\"single\"  w:sz=\"4\" w:space=\"0\"/><w:insideH w:val=\"single\"  w:sz=\"4\" w:space=\"0\"/></w:tblBorders></w:tblPr>";
		Tbl tbl = Docx4j_Helper.factory.createTbl();
		TblPr tblPr = (TblPr) XmlUtils.unmarshalString(tblPrStr);
		tbl.setTblPr(tblPr);
		Tr tr = Docx4j_Helper.factory.createTr();
		Tc tc = Docx4j_Helper.factory.createTc();
		tr.getContent().add(tc);

		tc = Docx4j_Helper.factory.createTc();
		tr.getContent().add(tc);

		tc = Docx4j_Helper.factory.createTc();
		tr.getContent().add(tc);

		tc = Docx4j_Helper.factory.createTc();
		tr.getContent().add(tc);

		tc = Docx4j_Helper.factory.createTc();
		tr.getContent().add(tc);
		tbl.getContent().add(tr);

		tr = Docx4j_Helper.factory.createTr();
		tc = Docx4j_Helper.factory.createTc();
		tr.getContent().add(tc);

		tc = Docx4j_Helper.factory.createTc();
		tr.getContent().add(tc);

		tc = Docx4j_Helper.factory.createTc();
		tr.getContent().add(tc);

		tc = Docx4j_Helper.factory.createTc();
		tr.getContent().add(tc);

		tc = Docx4j_Helper.factory.createTc();
		tr.getContent().add(tc);
		tbl.getContent().add(tr);
		documentPart.getContent().add(9, tbl);
		
		Docx4j_Helper.saveWordPackage(wordMLPackage, outputfilepath);
	

    结果为:

   

     全文完。

     

  • 大小: 6.3 KB
  • 大小: 9 KB
分享到:
评论

相关推荐

    docx4j操作word

    使用docx4j,也可以将图片插入到Word文档中。 3. 文档的一些操作 ### 3.1 合并Word 使用docx4j,可以将多个Word文档合并成一个文档。 ### 3.2 Word转换成pdf 使用docx4j,也可以将Word文档转换成pdf文件。 ...

    docx4j及其依赖包

    总之,docx4j是一个强大且灵活的工具,能够帮助开发者高效地处理`.docx`文档,无论是简单的文本替换还是复杂的文档操作,都能轻松应对。通过深入理解和熟练使用docx4j,可以大大提升文档处理的自动化水平,降低手动...

    docx4j全部jar包,包含docx4j-3.2.1.jar、poi-3.14.jar等60个jar包。.zip

    docx4j是一个Java库,专门用于处理Microsoft Office Open XML(OOXML)格式,特别是.docx和.pptx文档。这个库提供了丰富的功能,包括创建、读取、修改以及转换这些文档。它允许开发者通过编程方式操作Word文档,极大...

    docx4j-3.3.3.zip

    5. **复杂格式支持**:对于复杂的排版和样式,docx4j提供了丰富的API,可以处理页边距、列宽、行高、段落间距等细节。 6. **图片处理**:插入和调整图片大小,甚至可以将图片转换为不同的格式。 在实际开发中,...

    Docx4j office word java

    4. **插入图像**:使用`org.docx4j.model.graphics.image.ImagePart`和`org.docx4j.model.relationships.PartReference`将图片添加到文档中,并指定其位置和大小。 5. **保存与转换**:完成文档编辑后,调用`org....

    Java结合docx4j生成docx文件

    本篇文章将深入探讨如何使用Java结合docx4j库来创建和操作Microsoft Word的.docx文件。docx4j是一个强大的开源Java库,专门用于读写Open XML格式的文档,包括.docx、.xlsx和.pptx等。 首先,我们来看docx4j的基本...

    docx4j 动态生成表格 (一 )

    docx4j库提供了丰富的功能,使得这些操作变得简单易行。 总的来说,docx4j是处理OOXML文档的强大工具,对于需要生成报告、自动化文档处理或与Word文档交互的Java开发者来说,它是一个不可或缺的资源。通过学习和...

    Docx4j入门指南

    Docx4j是一个用于Java语言中处理Word文档、PowerPoint演示文稿和Excel表格的开源类库。它允许开发者通过XML解析文档内容,而不是采用DOM或SAX解析器。Docx4j使用JAXB(Java API for XML Binding)在内存中构建文档的...

    docx4j-community-8.1.5.zip

    对于docx文件,它可以实现文本插入、段落格式调整、表格操作、图片处理等;对于pptx,支持幻灯片创建、布局调整、动画设置等;而对于xlsx,它能够进行单元格操作、公式计算、数据透视表处理等。docx4j的API设计简洁...

    docx4j操作word2007

    **docx4j操作word2007** 在IT领域,docx4j是一个非常实用的Java库,专为处理Microsoft Office Open XML (OOXML) 文件格式,如.docx、.xlsx和.pptx而设计...无论是简单的文本替换还是复杂的模板生成,docx4j都能胜任。

    docx4j-community-6.0.1

    《docx4j社区版6.0.1详解》 docx4j是一款基于Java的开源库,专门用于处理Microsoft Office Open XML (OOXML) 文件格式,如.docx、.pptx和.xlsx等。其6.0.1版本是官方发布的原版,包含了完整的文档和所有必需的依赖...

    docx4j 替换文本

    - **模板处理**:在批量生成报告或信函时,docx4j可以作为模板引擎,动态插入变量数据,实现个性化内容的生成。 5. **最佳实践与注意事项** - **性能优化**:由于docx4j是基于XML操作,大型文档可能会消耗大量...

    docx4j-6.1.2.jar.zip

    例如,你可以使用`org.docx4j.model.content.Paragraph`来创建段落,使用`org.docx4j.model.fields.merge.DataField`来插入动态数据,使用`org.docx4j.model.properties.table.TableProperties`来设置表格样式。...

    使用docx4j编程创建复杂的.docx格式的word文档

    2. **添加内容**:docx4j提供了多种方法来插入文本、段落、列表、表格等。例如,你可以使用`MainDocumentPart.addStyledParagraphOfText()`方法添加带有特定样式的段落,使用`Table`类创建表格,并通过`Row`和`Cell`...

    java docx文档操做需要的相关jar包

    除了基本的文档操作,`docx4j`还提供了很多高级功能,比如插入表格、图片、样式设置等。此外,`util`类通常是一些辅助工具,用于简化常用操作,比如创建段落、字体设置等。例如,一个简单的util工具类可能包含这样的...

    DOC4J操作word文档

    DOC4J的核心是`org.docx4j.model`包下的各种模型对象,它们对应于Word文档中的各个元素,如段落、表格、图片等。通过这些对象,我们可以创建和修改Word文档的内容。 2. 创建Word文档: DOC4J提供`org.docx4j.jaxb...

    java批量处理word,包含批量转word与xml互转,去除首尾页面,批量追加文字,批量修改log图片,创建页眉、页脚,修改无规则的数据等等

    批量追加文字:要在多个Word文档中批量追加文字,可以使用docx4j创建一个新段落,并将其插入到每个文档的适当位置。这个过程涉及到定位插入点,以及正确地设置样式和格式。 批量修改LOGO图片:在Word文档中替换图片...

    Docx 文档操作工具类

    使用Docx4j,我们可以遍历文档中的每个段落和运行(run),查找并替换目标文本。以下是一个简单的示例代码片段: ```java WordprocessingMLPackage wordDoc = WordprocessingMLPackage.load(new File("1.docx")); ...

    java操作word

    docx4j 提供了一系列的类和方法,使开发者可以方便地操作 Word 文档的各种元素,包括文本、段落、表格、图片等。例如,你可以通过创建 `WordprocessingMLPackage` 对象来初始化一个新的 Word 文档,然后添加 `...

Global site tag (gtag.js) - Google Analytics