Spire.Doc可以为Word文件插入各种样式的书签,对于一个比较长的Word文件,客户可能需要插入一个多层书签,以便更好地为阅读者导航,当插入书签后,开发人员还可以通过代码为不同层次的书签设置不同的颜色,让客户阅读时拥有更好的体验。
Spire.Doc Word文档处理控件从5.5版本开始添加了一个新的BookmarkLayout 方法,用于开发人员为不同层级的书签设置不同的颜色,具体可以查看下面的完整代码:
class Program
{
static void Main(string[] args)
{
Document document = new Document();
document.LoadFromFile("sample.docx");
ToPdfParameterList toPdf = new ToPdfParameterList();
toPdf.CreateWordBookmarks = true;
toPdf.WordBookmarksTitle = "Changed bookmark";
toPdf.WordBookmarksColor = Color.Gray;
//the event of BookmarkLayout occurs when draw a bookmark
document.BookmarkLayout += document_BookmarkLayout;
document.SaveToFile("result.pdf", toPdf);
}
static void document_BookmarkLayout(object sender,
Spire.Doc.Documents.Rendering.BookmarkLevelEventArgs args)
{
if (args.BookmarkLevel.Level == 2)
{
args.BookmarkLevel.Color = Color.Red;
args.BookmarkLevel.Style = BookmarkTextStyle.Bold;
}
else if (args.BookmarkLevel.Level == 3)
{
args.BookmarkLevel.Color = Color.Gray;
args.BookmarkLevel.Style = BookmarkTextStyle.Italic;
}
else
{
args.BookmarkLevel.Color = Color.Green;
args.BookmarkLevel.Style = BookmarkTextStyle.Regular;
}
}
}
}