Docx4j:获取段落的样式名称

时间:2014-02-27 17:36:52

标签: java docx docx4j

我想解析docx文档。我使用此代码来获取段落并显示文本:

   final String XPATH_TO_SELECT_TEXT_NODES = "//w:p";
    final List<Object> jaxbNodes = documentPart.getJAXBNodesViaXPath(XPATH_TO_SELECT_TEXT_NODES, true);

    for (Object jaxbNode : jaxbNodes){
            final String paragraphString = jaxbNode.toString();
            System.out.println("[Start]: " + paragraphString);
    }       

但我还需要知道当前段落的样式名称。我怎么能这样做?

感谢您的帮助。 1ceman

1 个答案:

答案 0 :(得分:1)

PPr pPr = ((P)XmlUtils.unwrap(jaxbNode) ).getPPr();
if (pPr != null && pPr.getPStyle() != null) {
    String style = pPr.getPStyle().getVal());
    // etc

如果没有显式样式,则它使用默认的段落样式(在样式部分中指定)。