2016-08-08 23 views
0

Word文書で順序付けられていないリストをdocx4jで生成したいとします。誰でも私に箇条書きリストのAbstractNumberingの例を教えてもらえますか?箇条書きリストのAbstractNumberingを設定する方法

public void setAbstractNumbering(){ 
    try { 
     NumberingDefinitionsPart ndp = new NumberingDefinitionsPart(); 
     myword.addTargetPart(ndp); 
     Numbering.AbstractNum abstractNum = factory.createNumberingAbstractNum(); 
     abstractNum.setAbstractNumId(BigInteger.valueOf(1)); 
     Numbering.AbstractNum.MultiLevelType multiLevelType = new Numbering.AbstractNum.MultiLevelType(); 
     abstractNum.setMultiLevelType(multiLevelType); 
     multiLevelType.setVal("singleLevel"); 
     Lvl lvl = factory.createLvl(); 
     abstractNum.getLvl().add(lvl); 
     lvl.setIlvl(BigInteger.valueOf(0)); 
     Lvl.Start start = new Lvl.Start(); 
     lvl.setStart(start); 
     start.setVal(BigInteger.valueOf(1)); 
     NumFmt numFmt = factory.createNumFmt(); 
     lvl.setNumFmt(numFmt); 
     numFmt.setVal(NumberFormat.BULLET); 
     Lvl.LvlText text = new Lvl.LvlText(); 
     lvl.setLvlText(text); 
     text.setVal("%1"); 

     Numbering.Num numbering = ndp.addAbstractListNumberingDefinition(abstractNum); 
     Numbering.Num.AbstractNumId abstractNumId = new Numbering.Num.AbstractNumId(); 
     abstractNumId.setVal(BigInteger.valueOf(1)); 
     numbering.setAbstractNumId(abstractNumId); 
     numbering.setNumId(BigInteger.valueOf(3)); 

    } catch (InvalidFormatException ife){ 
     ife.printStackTrace(); 
    } 

} 

NumberingDefinitionsPartabstractNumberingを追加するとき、私は現在、NullPointerExceptionを取得しています。誰かが私が間違っていることを知っていますか?あなたはそれを指す番号の定義インスタンスを必要とする

+0

パーツを作成した後、パーツを作成する必要があります。したがって、ndp = new NumberingDefinitionsPart()の後に、ndp.setContents(new Numbering());を試してください。 – JasonPlutext

答えて

0

ListHelper.java#L155

。さらにecma376/WordML/numbering_2.html

Wordで簡単なdocxを作成し、docx4j webappまたはHelper Word AddInを使用して、そのdocxの番号付け定義部分からコードを生成するのが最も簡単な方法です。

+0

私はとても感謝しています、これらの例は素晴らしいです! –

+0

ListHelperを使用すると、同じ命令でNullPointerExceptionも発生します –

関連する問題