java poi 样式_java – 使用Apache poi从docx获取文本样式

本文档介绍了如何使用Apache POI库从MS docx文件中提取文本样式信息,包括粗体、斜体等。通过示例代码展示了如何遍历段落和文本运行(run),获取每个run的样式属性,如是否加粗和斜体。
摘要由CSDN通过智能技术生成

我正在尝试从MS docx文件中获取样式信息,使用粗体,斜体等添加的样式编写文件内容没有问题.字体大小等,但阅读文件内容和获取样式信息并不是那么清楚.我尝试过使用X

WPFDocument,这个API似乎没有能力读取样式.我现在正在尝试XWPFWordExtractor,它似乎有点更有希望,但我仍然无法获取文本的样式信息.

我阅读的内容类型与以下内容类似.

“你好,这是粗体文字,这是斜体文字abd这是粗体斜体文字”

任何指向示例的指针都会很棒.

最佳答案 好的,基于Gagravarr的评论,解决方案如下所示,完全符合我的要求.所以基本上Gagravarr回答了这个问题,但我不确定除了说它听到给他信任之外还有多少.

for (XWPFParagraph paragraph : docx.getParagraphs()) {

int pos = 0;

for (XWPFRun run : paragraph.getRuns()) {

System.out.println("Current run IsBold : " + run.isBold());

System.out.println("Current run IsItalic : " + run.isItalic());

for (char c : run.text().toCharArray()) {

System.out.print(c);

pos++;

}

System.out.println();

}

}

`

输出如下

当前运行IsBold:false

当前运行IsItalic:false

“你好,这是

当前运行IsBold:true

当前运行IsItalic:false

粗体

当前运行IsBold:false

当前运行IsItalic:false

这是

当前运行IsBold:false

当前运行IsItalic:是的

斜体文字

当前运行IsBold:false

当前运行IsItalic:false

一个

当前运行IsBold:false

当前运行IsItalic:false

ñ

当前运行IsBold:false

当前运行IsItalic:false

这是

当前运行IsBold:true

当前运行IsItalic:是的

粗体斜体文字

当前运行IsBold:false

当前运行IsItalic:false

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值