4

Novacode DocX を使用して、複数の番号付きリストを Word 文書に挿入しようとしています。

このようなもの:

var doc = DocX.Create("somedoc.docx");
var list = doc.AddList(listType: ListItemType.Numbered, startNumber: 1);

doc.AddListItem(list, "Number 1", 0, listType);
doc.AddListItem(list, "Number 2", 0, listType);

doc.InsertList(list);
doc.InsertParagraph(); //just to get some space between.
var secondList= doc.AddList(listType: ListItemType.Numbered, startNumber: 1);

doc.AddListItem(secondList, "Number 1", 0, listType); 
doc.AddListItem(secondList, "Number 2", 0, listType); 

doc.InsertList(secondList);

これにより、次のようになります。

  1. ナンバー1
  2. 2番
  3. ナンバー1
  4. 2番

私が期待するのはこれです:

  1. ナンバー1
  2. 2番
  1. ナンバー1
  2. 2番

startNumber パラメータが機能していないようです。結果のドキュメントの numbering.xml ファイルでは、numIds と abstractNumIds の両方が正しく生成されているように見えます。2 つのリストには異なる numId があり、それぞれが異なる abstractNumId を参照しています。

何が問題なのか (DocX ライブラリのバグ以外) について何か考えがありましたか? Word 2010 でドキュメントを開いているので、DocX および Word > 2007 との非互換性があるという 1 つの理論があります。その場合、ドキュメントを生成した後に XML で何かを行う必要があると思われます。

4

1 に答える 1

3

Novacode.Docx のバグであることが判明しました。バージョン1.0.0.16で適用されたパッチを提出しました

于 2015-05-26T10:21:25.023 に答える