docx4j или Apache-POI: как получить идентификаторы абзаца из файла docx, содержащего изображения и языки, отличные от английского? - PullRequest
0 голосов
/ 22 мая 2019

Я хочу получить идентификаторы абзаца из файла .docx.Я не могу получить идентификаторы, когда есть файл с языком, отличным от английского или изображения.

Я попытался прочитать абзацы с помощью docx4j и apache-poi, как показано ниже.Но не удалось получить идентификаторы абзаца.

 List<CLMParagraph> clmParagraphs = new ArrayList<CLMParagraph>();

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

    for (int i = 0; i < xmlfragmentlist.getLength(); i++) {



        Node node = xmlfragmentlist.item(i);

        CLMParagraph paragraph = new CLMParagraph();

        // do something for each node

        if (node.getNodeType() == Node.ELEMENT_NODE) {

            Element e = (Element) node;

            if (e.hasAttribute("w14:paraId")) {

                paragraph.setParaId(e.getAttribute("w14:paraId"));

                paragraph.setParaText(paragraphs.get(i).getText());

                paragraph.setSentences(getParaSentences(document, paragraphs.get(i)));

                clmParagraphs.add(paragraph);

            }

        }

    }

Я хочу получить идентификаторы абзаца для изображений и текста не на английском языке.

1 Ответ

0 голосов
/ 26 мая 2019

В docx4j с объектом абзаца P p это просто p.getParaId ()

Подробнее https://github.com/plutext/docx4j/blob/master/docx4j-openxml-objects/src/main/java/org/docx4j/wml/P.java#L364

Имеются ли изображения или LOTE, не имеет значения.

...