XWPFDocument 、XWPFParagraph设置段落标题

您所在的位置:网站首页 二级标题都是1开头 XWPFDocument 、XWPFParagraph设置段落标题

XWPFDocument 、XWPFParagraph设置段落标题

2024-06-29 13:41| 来源: 网络整理| 查看: 265

XWPFDocument 、XWPFParagraph设置段落标题

在开发中遇到使用XWPFDocument 、XWPFParagraph设置标题不起作用的问题,参考了网上的一下资料归纳了以下步骤

第一步:新建一个word文档作为模板,新建一行随便输入内容,设置为一级标题,有需要的话可以换行输入内容设置二级标记等等。

效果如下

在这里插入图片描述

第二步编码:

代码如下:

public class WordUtil { private CTStyles styles = null; public void setWord(){ //模板地址 XWPFDocument model = new XWPFDocument(new FileInputStream("D:\\xxx.docx")); styles = model.getStyle(); // 新建的word文档对象 XWPFDocument doc = new XWPFDocument(); // 获取新建文档样式 XWPFStyles docStyle = doc.createStyles(); // 设置新建文档样式为模板中读取到的样式 docStyle.setStyles(styles); XWPFParagraph para = doc.createParagraph(); //设置一级标题(注意这里有问题,请往下看) para.setStyle("2"); XWPFRun run = para.createRun(); // 标题内容 run.setText("一级标题"); OutputStream os = new FileOutputStream("D:\\simpleWrite.docx"); //把doc输出到输出流 doc.write(os); os.close(); } }

有一些人就开始疑惑为什么这里 para.setStyle(“2”)中的参数是2,而且有部分人发现 para.setStyle(“2”)中设置2并不起作用。至于在para.setStyle(“2”)中为什么设置的参数是2,在这里解释一下。

因为不同的word模板读取出来的style是不同的,输出读取到的模板样式styles,查看一下内容

......(省略内容)

找到以下内容

其中第二行中 的heading 1表示的就是一级标题,对应的styleId就是2 在这里插入图片描述 所以设置一级标题时在代码中这样写:para.setStyle(“2”)

当然设置标题的方式并非只有这种,也可以自定义标题样式,,在这里就不细说了。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3