Example usage for org.apache.poi.xwpf.usermodel XWPFNum getCTNum

List of usage examples for org.apache.poi.xwpf.usermodel XWPFNum getCTNum

Introduction

In this page you can find the example usage for org.apache.poi.xwpf.usermodel XWPFNum getCTNum.

Prototype

public CTNum getCTNum() 

Source Link

Usage

From source file:apachepoitest.XWPFParagraphClone.java

License:Apache License

/**
 * Returns numbering format for this paragraph, eg bullet or
 *  lowerLetter.//  w  w  w . j  a va 2  s.c  om
 * Returns null if this paragraph does not have numeric style.
 */
public String getNumFmt() {
    BigInteger numID = getNumID();
    XWPFNumbering numbering = document.getNumbering();
    if (numID != null && numbering != null) {
        XWPFNum num = numbering.getNum(numID);
        if (num != null) {
            BigInteger ilvl = getNumIlvl();
            BigInteger abstractNumId = num.getCTNum().getAbstractNumId().getVal();
            CTAbstractNum anum = numbering.getAbstractNum(abstractNumId).getAbstractNum();
            CTLvl level = null;
            for (int i = 0; i < anum.sizeOfLvlArray(); i++) {
                CTLvl lvl = anum.getLvlArray(i);
                if (lvl.getIlvl().equals(ilvl)) {
                    level = lvl;
                    break;
                }
            }
            if (level != null)
                return level.getNumFmt().getVal().toString();
        }
    }
    return null;
}

From source file:fr.opensagres.poi.xwpf.converter.core.XWPFDocumentVisitor.java

License:Open Source License

protected XWPFAbstractNum getXWPFAbstractNum(XWPFNum num) {
    CTDecimalNumber abstractNumID = num.getCTNum().getAbstractNumId();
    XWPFAbstractNum abstractNum = document.getNumbering().getAbstractNum(abstractNumID.getVal());
    return abstractNum;
}

From source file:org.apache.tika.parser.microsoft.ooxml.XWPFListManager.java

License:Apache License

/**
 *
 * @param paragraph paragraph//w w w  .j  a  v a 2 s .  c om
 * @return the formatted number or an empty string if something went wrong
 */
public String getFormattedNumber(final XWPFParagraph paragraph) {
    if (numbering == null) {
        return "";
    }

    int currNumId = paragraph.getNumID().intValue();
    XWPFNum xwpfNum = numbering.getNum(paragraph.getNumID());
    if (xwpfNum == null) {
        return "";
    }
    CTNum ctNum = xwpfNum.getCTNum();
    CTDecimalNumber abNum = ctNum.getAbstractNumId();
    int currAbNumId = abNum.getVal().intValue();

    ParagraphLevelCounter lc = listLevelMap.get(currAbNumId);
    LevelTuple[] overrideTuples = overrideTupleMap.get(currNumId);
    if (lc == null) {
        lc = loadLevelTuples(abNum);
    }
    if (overrideTuples == null) {
        overrideTuples = loadOverrideTuples(ctNum, lc.getNumberOfLevels());
    }

    String formattedString = lc.incrementLevel(paragraph.getNumIlvl().intValue(), overrideTuples);

    listLevelMap.put(currAbNumId, lc);
    overrideTupleMap.put(currNumId, overrideTuples);

    return formattedString;
}