Step 1: 创建一个文档实例。
Document doc = new Document();Section section = doc.AddSection();
Step 2: 插入一个书签。
Paragraph paragraph = section.AddParagraph();paragraph.AppendBookmarkStart("MyBookmark");paragraph.AppendText("Text inside a bookmark");paragraph.AppendBookmarkEnd("MyBookmark");
Step 3: 创建交叉引用字段,并通过书签名称将其链接到书签。
Field field = new Field(doc);field.Type = FieldType.FieldRef;field.Code = @"REF MyBookmark p h";
Step 4: 添加一个段落,并将该字段插入段落。
paragraph = section.AddParagraph();paragraph.AppendText("For more information, see ");paragraph.ChildObjects.Add(field);
Step 5: 将FieldSeparator对象插入到段落中,该段落在字段中用作分隔符。
FieldMark fieldSeparator= new FieldMark(doc, FieldMarkType.FieldSeparator);paragraph.ChildObjects.Add(fieldSeparator);
Step 6: 设置交叉引用字段的显示文本。
TextRange tr = new TextRange(doc);tr.Text = "above";paragraph.ChildObjects.Add(tr);
Step 7: 将FieldEnd对象插入段落,该段落用于标记字段的末尾。
FieldMark fieldEnd = new FieldMark(doc, FieldMarkType.FieldEnd);paragraph.ChildObjects.Add(fieldEnd);
Step 8: 保存到文件。
doc.SaveToFile("output.docx", FileFormat.Docx2013);
导出:交叉引用显示为将读者引用到引用项目的链接。

完整代码:
[C#]
Document doc = new Document();Section section = doc.AddSection();//create a bookmarkParagraph paragraph = section.AddParagraph();paragraph.AppendBookmarkStart("MyBookmark");paragraph.AppendText("Text inside a bookmark");paragraph.AppendBookmarkEnd("MyBookmark");//insert line breaksfor (int i = 0; i < 4; i++){ paragraph.AppendBreak(BreakType.LineBreak);}//create a cross-reference field, and link it to bookmark Field field = new Field(doc);field.Type = FieldType.FieldRef;field.Code = @"REF MyBookmark p h";//insert field to paragraphparagraph = section.AddParagraph();paragraph.AppendText("For more information, see ");paragraph.ChildObjects.Add(field);//insert FieldSeparator objectFieldMark fieldSeparator = new FieldMark(doc, FieldMarkType.FieldSeparator);paragraph.ChildObjects.Add(fieldSeparator);//set display text of the fieldTextRange tr = new TextRange(doc);tr.Text = "above";paragraph.ChildObjects.Add(tr);//insert FieldEnd object to mark the end of the fieldFieldMark fieldEnd = new FieldMark(doc, FieldMarkType.FieldEnd);paragraph.ChildObjects.Add(fieldEnd);//save filedoc.SaveToFile("output.docx", FileFormat.Docx2013);
[VB.NET]
Document doc = New Document()Dim section As Section = doc.AddSection()'create a bookmarkDim paragraph As Paragraph = section.AddParagraph()paragraph.AppendBookmarkStart("MyBookmark")paragraph.AppendText("Text inside a bookmark")paragraph.AppendBookmarkEnd("MyBookmark")'insert line breaksDim i As IntegerFor i = 0 To 4- 1 Step i + 1 paragraph.AppendBreak(BreakType.LineBreak)Next'create a cross-reference field, and link it to bookmark Dim field As Field = New Field(doc)field.Type = FieldType.FieldReffield.Code = "REF MyBookmark p h"'insert field to paragraphparagraph = section.AddParagraph()paragraph.AppendText("For more information, see ")paragraph.ChildObjects.Add(field)'insert FieldSeparator objectDim fieldSeparator As FieldMark = New FieldMark(doc, FieldMarkType.FieldSeparator)paragraph.ChildObjects.Add(fieldSeparator)'set display text of the fieldDim tr As TextRange = New TextRange(doc)tr.Text = "above"paragraph.ChildObjects.Add(tr)'insert FieldEnd object to mark the end of the fieldDim fieldEnd As FieldMark = New FieldMark(doc, FieldMarkType.FieldEnd)paragraph.ChildObjects.Add(fieldEnd)'save filedoc.SaveToFile("output.docx", FileFormat.Docx2013)
标签:文档管理word文档处理
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!