修改书签名称
场景说明
在文档处理中,有时需要修改已存在的书签名称,例如规范化命名、适应新的业务规则等。由于 JSSDK 不提供直接重命名的方法,需要通过"添加新书签 + 删除旧书签"的方式实现。
相关 API 文档
示例代码
const name = 'newName';
// 获取书签
const bookmark = await Application.ActiveDocument.Bookmarks.item(1);
// 获取区域
const range = await bookmark.range;
// 为当前区域添加新名称的书签
const res = await Application.ActiveDocument.Bookmarks.add(name, range);
// 删除旧书签
await bookmark.delete();
// ⚠️ 注意:操作新书签需要根据书签名重新获取
const newBookmark = await Application.ActiveDocument.Bookmarks.item(name);
注意事项
- 重命名本质:书签重命名实际上是"先添加新书签,再删除旧书签"的组合操作
- 操作顺序:必须先添加新书签,再删除旧书签,顺序不能颠倒
- 引用失效:删除旧书签后,原来的 bookmark 对象引用将失效,需要用新名称重新获取