gpt4 book ai didi

java - 如何使用 apache POI 从 docx 文档中获取段落的字体大小?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:11:38 26 4
gpt4 key购买 nike

我有一个 docx 格式的 MS-Word 文档。我想获取每个段落或行的字体大小。我试着寻找类似的方法使用 here用于 apache POI 文档页面上的 docx 文件,但找不到。

我试过这种方法,但它给出了 -1 作为字体大小font-name 为 null

File file = new File(fileName);
FileInputStream fis = new FileInputStream(file.getAbsolutePath());

XWPFDocument document = new XWPFDocument(fis);
List<XWPFParagraph> paragraphs = document.getParagraphs();

System.out.println("Total no of paragraph in Docx : "+paragraphs.size());
for (XWPFParagraph para : paragraphs) {
XWPFStyle style = document.getStyles().getStyle(para.getStyleID());
System.out.println(para.getText());
int pos = 0;
for (XWPFRun run : para.getRuns()) {
System.out.println("Current run IsBold : " + run.isBold());
System.out.println("Current run IsItalic : " + run.isItalic());
System.out.println("Current Font Size : " + run.getFontSize());
System.out.println("Current Font Name : " + run.getFontName());
}
}
fis.close();

更新:我找到了this , 但无法获取字体大小。

提前致谢。

最佳答案

对于字体大小,您可以编写如下代码:

int fontSize = run.getFontSize();
if (fontSize == -1){
System.out.println(document.getStyles().getDefaultRunStyle().getFontSize())
}else{
System.out.println(run.getFontSize());
}

关于java - 如何使用 apache POI 从 docx 文档中获取段落的字体大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43985081/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com