java poi 设置标题_poi生成Word时指定文本样式,如“正文”,“标题1”,“标题2”等...
POI生成Word时,设置段落的样式
String style = "2"; //标题2的样式
XWPFParagraph xwpfParagraph = doc.insertNewParagraph(run);
xwpfParagraph.setStyle(style);
其实设置其他的样式都一样。
例如:你想设置你的样式为“标题2”(“标题2”只是你在word里看到的标题名称,实际上在xml中的名称可能不一样)
word里:我是标题2的样式 --这个段落在word里设置了标题2的样式 xml里:
我
是标题
2
的样式
而样式的定义是这样的(这些都可以在word转成xml的内容里找到):
到此我们就知道,设置段落样式“标题2”的方法就是: xwpfParagraph.setStyle("2");
上面样式的xml里也可以看到,标题3的样式值是3,所以设置标题3的方法就是: xwpfParagraph.setStyle("3");
问题来了!
如何知道样式的值呢?
代码如下:
/**
* 查找文档样式值
* @param document 文档类
* @param styleName 样式名称
* @return 样式值
* @throws IOException
* @throws XmlException
*/
public static String getStyleValue(XWPFDocument document, String styleName) throws IOException, XmlException {
if (styleName == null || styleName.length() == 0) {
return null;
}
CTStyles styles = document.getStyle();
CTStyle[] styleArray = styles.getStyleArray();
for (CTStyle style : styleArray) {
//用包含会好点
if (style.getName().getVal().contains(styleName)) {
return style.getLink().getVal();
}
}
return null;
}
在word里的样式名称是 标题 2,但xml里就是 ,也就是 标题 2 Char 所以我用contains( )方法。
注意 如果不生效,就先新建一个文档,把段落设置成想要的样式,然后看看段落样式的值是多少就可以了。 我觉得大部分问题的解决方法都可以去看xml里的值,然后再用代码去设置值就好了。
java poi 设置标题_poi生成Word时指定文本样式,如“正文”,“标题1”,“标题2”等...相关推荐
- java poi 加粗_poi生成excel整理(设置边框/字体/颜色/加粗/居中/)
HSSFWorkbook wb = new HSSFWorkbook();html HSSFSheet sheet = wb.createSheet();字体 HSSFCellStyle setBor ...
- java poi 设置公式_poi公式处理
设置单元格样式 HSSFCellStyle类代表一种单元格样式.可以通过这个类来设置单元格的边框样式.背景颜色.字体.水平和垂直对齐方式等等. HSSFCellStyle titleStyle = w ...
- java poi设置单元格格式为数值_Excel 文本转数值的方法——我找的好苦啊
不明绝厉 在Excel中的单元格中输入数字时,如果在数字前加上一个半角单引号(')则该数字在单元格中的存储格式会自己转为"文本格式". 如果有一列(或一行)数字都是用这种方法输入的 ...
- Java 用 Freemarker 生成 Word 时内容换行
一.原因 试过各种换行符 '\r' '\n' '\r\n' '(char)11' 全部都不行!!! 原因是:Java 用 Freemarker 生成 Word 时的换行符被自动解析忽略掉 二.解决方法 ...
- Java 导出数据库表信息生成Word文档
一.前言 最近看见朋友写了一个导出数据库生成word文档的业务,感觉很有意思,研究了一下,这里也拿出来与大家分享一波~ 先来看生成word文档效果吧 下面我们也来一起简单的实现吧 二.Java 导出数 ...
- Java使用ftl模板文件生成Word,以及Word转换图片或Pdf工具类
Java使用ftl模板文件生成Word 一.写在前面 最近在项目中使用打印功能,发现这个功能我已经写过多次了,下面这个文章的发步日期在2020年,不得不感慨时间之快啊. https://blog.cs ...
- 一、后端:针对用JAVA POI解决已知路径WORD文件增加自定义页眉,灵活设置页眉字体部分样式@2019
一.获取添加页眉doc文件 我的项目文件路径: String reportSavePath= "****************"; DOCX文件一: changer.setAcc ...
- java 用ftl模板生成word时插入多张图片
前提: 1.知道如何创建ftl模板 2.知道ftl的指令及语法 3.知道如何用java将ftl文件生成word并添加数据 4.知道如何将图片转为base64字符串 内容: 1.在ftl模板中引入多个图 ...
- Java项目中使用Freemarker生成Word文档
Web项目中生成Word文档的操作屡见不鲜,基于Java的解决方案也是很多的,包括使用Jacob.Apache POI.Java2Word.iText等各种方式,其实在从Office 2003开始,就 ...
最新文章
- kibana6.2.2安装
- MySql 触发器同步备份数据表记录
- 游戏中的物理与数学(一):物体运动算法的实现
- openstack 热迁移(Live Migration)和冷迁移(Cold Migration)
- Spring Data JPA 从入门到精通~Specification工作中的一些扩展
- 谈谈对MVC的理解(View+Model+Controller)
- 10恢复出厂设置_Mac系统如何恢复出厂设置
- stringr | 文本处理方法(Ⅰ-3):字符串处理函数(下)
- 优雅的使用Python之软件管理
- 给self.navigationItem.rightBarButtonItem设置字体颜色
- 黑客帝国中比较酷炫的代码雨的实现
- eclipse 2020版 安装与配置完美教程
- kindle看pdf乱码_Kindle 3 使用手记(3) - kindle系统之乱码、txt、mobi和pdf
- #VMware ESXI7.0的下载
- python class类_学习python中的class类
- Servlet 中的四大作用域
- 有符号整型加法与乘法
- json格式简介和相关操作
- EasyCVR实现智慧楼宇道闸控制流程及参考代码分享
- mysql 双机热备 原理,MySQL双机热备份的配置及原理
热门文章
- 使用postman模拟百度通用文字识别
- 数学是成就卓越开发人员的必备技能
- Java 8: LocalDate、LocalTime 、LocalDateTime 处理日期时间
- jquery checkbox 选中、改变状态、change 和 click 事件
- 解决跨域问题:No ‘Access-Control-Allow-Origin‘ header is present on the requested resource.
- Mybatis 中更新方法: updateByPrimaryKeySelective() 和 updateByPrimaryKey() 的区别
- 由Docker的MySQL官方镜像配置的容器无法启动问题解决办法(修改配置后无法启动)
- sorted_一个函数秒杀冒泡排序算法和选择排序
- C语言字符篇(五)内存函数
- 3ds max删除了对象后,还是将原来所有对象输出的原因