BookmarkName
内容
[
隐藏
]FieldSeq.BookmarkName property
获取或设置指向文档中其他位置而非当前位置的项目的书签名称。
public string BookmarkName { get; set; }
例子
展示如何组合目录和序列字段。
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// TOC 字段可以在其目录中为文档中找到的每个 SEQ 字段创建一个条目。
// 每个条目包含包含SEQ字段的段落,
// 以及该字段出现的页面的编号。
FieldToc fieldToc = (FieldToc)builder.InsertField(FieldType.FieldTOC, true);
// 将此 TOC 字段配置为具有值为“MySequence”的 SequenceIdentifier 属性。
fieldToc.TableOfFiguresLabel = "MySequence";
// 配置此 TOC 字段以仅选取书签范围内的 SEQ 字段
// 名为“TOCBookmark”。
fieldToc.BookmarkName = "TOCBookmark";
builder.InsertBreak(BreakType.PageBreak);
Assert.AreEqual(" TOC \\c MySequence \\b TOCBookmark", fieldToc.GetFieldCode());
// SEQ 字段显示在每个 SEQ 字段处递增的计数。
// 这些字段还为每个唯一命名的序列维护单独的计数
// 由 SEQ 字段的“SequenceIdentifier”属性标识。
// 插入一个具有与目录匹配的序列标识符的 SEQ 字段
// TableOfFiguresLabel 属性。此字段不会在目录中创建条目,因为它位于目录之外
// 由“BookmarkName”指定的书签边界。
builder.Write("MySequence #");
FieldSeq fieldSeq = (FieldSeq)builder.InsertField(FieldType.FieldSequence, true);
fieldSeq.SequenceIdentifier = "MySequence";
builder.Writeln(", will not show up in the TOC because it is outside of the bookmark.");
builder.StartBookmark("TOCBookmark");
// 此 SEQ 字段的序列与 TOC 的“TableOfFiguresLabel”属性相匹配,并且位于书签的范围内。
// 包含此字段的段落将作为条目显示在目录中。
builder.Write("MySequence #");
fieldSeq = (FieldSeq)builder.InsertField(FieldType.FieldSequence, true);
fieldSeq.SequenceIdentifier = "MySequence";
builder.Writeln(", will show up in the TOC next to the entry for the above caption.");
// 此 SEQ 字段的序列与 TOC 的“TableOfFiguresLabel”属性不匹配,
// 并且位于书签的范围内。其段落不会作为条目显示在目录中。
builder.Write("MySequence #");
fieldSeq = (FieldSeq)builder.InsertField(FieldType.FieldSequence, true);
fieldSeq.SequenceIdentifier = "OtherSequence";
builder.Writeln(", will not show up in the TOC because it's from a different sequence identifier.");
// 此 SEQ 字段的序列与 TOC 的“TableOfFiguresLabel”属性相匹配,并且位于书签的范围内。
// 此字段还引用了另一个书签。该书签的内容将出现在此 SEQ 字段的 TOC 条目中。
// SEQ 字段本身不会显示该书签的内容。
fieldSeq = (FieldSeq)builder.InsertField(FieldType.FieldSequence, true);
fieldSeq.SequenceIdentifier = "MySequence";
fieldSeq.BookmarkName = "SEQBookmark";
Assert.AreEqual(" SEQ MySequence SEQBookmark", fieldSeq.GetFieldCode());
// 创建一个书签,其内容将显示在 TOC 条目中,因为上述 SEQ 字段引用了它。
builder.InsertBreak(BreakType.PageBreak);
builder.StartBookmark("SEQBookmark");
builder.Write("MySequence #");
fieldSeq = (FieldSeq)builder.InsertField(FieldType.FieldSequence, true);
fieldSeq.SequenceIdentifier = "MySequence";
builder.Writeln(", text from inside SEQBookmark.");
builder.EndBookmark("SEQBookmark");
builder.EndBookmark("TOCBookmark");
doc.UpdateFields();
doc.Save(ArtifactsDir + "Field.SEQ.Bookmark.docx");
也可以看看
- class FieldSeq
- 命名空间 Aspose.Words.Fields
- 部件 Aspose.Words