为什么在 Word 中打开文档后书签 ID 发生了变化
本文关键字:书签 ID 发生了 变化 文档 Word 为什么 | 更新日期: 2023-09-27 18:31:35
我正在使用打开的 XML SDK 向 Word 文档添加书签,我还以编程方式设置书签 ID 和名称,在 Word 中打开文档后,我将文档重新打开为 WordprocessingDocument,我发现书签 id 已更改为 0,1,2 之类的值...,我想知道为什么 Word 正在修改书签 ID, 我仍然可以使用名称而不是 id 来查找书签,因为我对 id 和名称使用相同的值,但这种行为对我来说看起来很奇怪。
这是我使用的代码:
BookmarkStart bookmarkStart1 = CreateBookmarkStart(entity.Id.ToString(), entity.Id);
BookmarkEnd bookmarkEnd1 = CreateBookmarkEnd(entity.Id);
Paragraph paragraph1 = CreateParagraph();
body.Append(bookmarkStart1);
body.Append(paragraph1);
body.Append(bookmarkEnd1);
private static BookmarkStart CreateBookmarkStart(String name, long id)
{
return new BookmarkStart
{
Name = name,
Id = id.ToString()
};
}
private static BookmarkEnd CreateBookmarkEnd(long id)
{
return new BookmarkEnd() { Id = id.ToString() };
}
使用的 id 是这样的值:245103 , 39045 ...
正如你所注意到的,你可以(并且应该)依赖书签名称,而不是ID。 像 REF 字段这样的东西使用名称,而不是 ID。
该 ID 似乎仅用于配对书签起点和终点标签。