深色模式
控制台
Bookmark 对象的集合,这些对象代表指定选定内容、范围或文档中的书签
方法 | 说明 |
---|---|
获取书签个数 | |
获取和设置书签排序 |
方法 | 说明 |
---|---|
添加书签 | |
获取书签内容 | |
获取所有书签 | |
替换书签内容 | |
判断书签是否存在 | |
书签集合的单个书签 | |
获取书签名称 | |
删除书签 | |
获取书签内容的类型 | |
书签内容是否是表格的一列 | |
复制书签 | |
选中书签内容 | |
书签内容是否为空 | |
书签内容起始位置 | |
书签内容结束位置 | |
获取书签内容区域 |
JSSDK: v1.1.19+ 支持
仅支持PC端
获取书签个数
表达式.ActiveDocument.Bookmarks.Count
表达式:文档类型应用对象。
返回 Number
代表文档内容控件的数量。
//@file=base.docx
async function example() {
await instance.ready();
const app = instance.Application;
// 添加书签
await app.ActiveDocument.Bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10,
},
});
// 获取书签数量
const count = await app.ActiveDocument.Bookmarks.Count;
console.log(count);
}
JSSDK: v1.1.19+ 支持
仅支持PC端
获取和设置书签排序
表达式.ActiveDocument.Bookmarks.DefaultSorting = WdBookmarkSortBy
表达式:文档类型应用对象。
设置书签排序时,WdBookmarkSortBy
详细可参考: Enum.WdBookmarkSortBy
//@file=base.docx
async function example() {
await instance.ready();
const app = instance.Application;
// 书签排序
const sort = await app.ActiveDocument.Bookmarks.DefaultSorting;
// 设置书签排序
app.ActiveDocument.Bookmarks.DefaultSorting = 0;
}
仅支持 PC 端
添加书签
注意
该方法暂不支持移动端
表达式.ActiveDocument.Bookmarks.Add({ Name, Range })
表达式:文档类型应用对象。
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Name | string | 是 | 书签名。书签名不能多于一个单词。 | |
+ Range | range {} | 是 | 书签标记的文本区域。可将书签设置到一个折叠的区域(插入点)。 | |
Start | number | 是 | 设置书签的起点 | |
End | number | 是 | 设置书签的终点 |
注意
Name
书签名不能重复,首字符不能使用数字和下划线,不能含有空格、.
等特殊符号
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 书签对象
const bookmarks = await app.ActiveDocument.Bookmarks
// 添加书签
await bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10
}
})
}
仅支持 PC 端
获取书签内容
表达式.ActiveDocument.Bookmarks.GetBookmarkText(Name)
表达式:文档类型应用对象。
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Name | String | 是 | 书签名 |
返回对应的书签内容
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 书签对象
const bookmarks = await app.ActiveDocument.Bookmarks
// 添加书签
await bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10
}
})
// 获取书签内容
const bookmarkText = await bookmarks.GetBookmarkText('WebOffice')
console.log(bookmarkText)
}
仅支持 PC 端
获取所有书签
表达式.ActiveDocument.Bookmarks.Json()
表达式:文档类型应用对象。
属性 | 数据类型 | 说明 |
---|---|---|
name | String | 书签名 |
begin | Number | 书签开始位置 |
end | Number | 书签结束位置 |
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 添加书签
await app.ActiveDocument.Bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10
}
})
// 获取所有书签
const bookmarks = await app.ActiveDocument.Bookmarks.Json()
console.log(bookmarks)
}
仅支持 PC 端
替换书签内容
表达式.ActiveDocument.Bookmarks.ReplaceBookmark(Data)
表达式:文档类型应用对象。
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
+ Data | Data [] | 是 | 替换内容结构体 | |
name | string | 是 | 替换书签的名字 | |
type | string | 是 | 替换书签的类型( text ) | |
value | string | 是 | 替换书签的新内容 |
返回 Boolean
,为 true
表示替换成功,否则失败。
//@file=base.docx
// 获取所有书签
async function example() {
await instance.ready()
const app = instance.Application
// 书签对象
const bookmarks = await app.ActiveDocument.Bookmarks
// 添加书签
await bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10
}
})
// 替换书签内容
const isReplaceSuccess = await bookmarks.ReplaceBookmark([
{
name: 'WebOffice',
type: 'text',
value: '替换书签内容'
}
])
console.log(isReplaceSuccess) // true
}
JSSDK: v1.1.19+ 支持
仅支持PC端
判断书签是否存在
表达式.ActiveDocument.Bookmarks.Exists(Name)
表达式:文档类型应用对象。
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Name | String | 是 | 书签名 |
返回 Boolean
,为 true
表示书签存在,否则不存在。
//@file=base.docx
async function example() {
await instance.ready();
const app = instance.Application;
// 添加书签
await app.ActiveDocument.Bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10,
},
});
// 判断书签是否存在
const isExist = await app.ActiveDocument.Bookmarks.Exists('WebOffice');
console.log(isExist); // true
}
仅支持 PC 端
书签集合的单个书签
表达式.ActiveDocument.Bookmarks.Item(Name)
表达式:文档类型应用对象
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Name | String | 是 | 书签名 |
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 书签对象
const bookmarks = await app.ActiveDocument.Bookmarks
// 添加书签
await bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10
}
})
// 获取单个书签对象
await app.ActiveDocument.Bookmarks.Item('WebOffice')
}
仅支持 PC 端
获取书签名称
表达式.ActiveDocument.Bookmarks.Item(Name).Name
表达式:文档类型应用对象。
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 添加书签
await app.ActiveDocument.Bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10
}
})
// 获取书签名称
await app.ActiveDocument.Bookmarks.Item('WebOffice').Name
}
仅支持 PC 端
删除书签
表达式.ActiveDocument.Bookmarks.Item(Name).Delete()
表达式:文档类型应用对象。
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 添加书签
await app.ActiveDocument.Bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10
}
})
// 删除书签
await app.ActiveDocument.Bookmarks.Item('WebOffice').Delete()
}
JSSDK: v1.1.19+ 支持
仅支持PC端
获取书签内容的类型
表达式.ActiveDocument.Bookmarks.Item(Name).StoryType
表达式:文档类型应用对象。
书签内容的类型,WdStoryType
详细可参考: Enum.WdStoryType
//@file=base.docx
async function example() {
await instance.ready();
const app = instance.Application;
// 添加书签
await app.ActiveDocument.Bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10,
},
});
// 获取书签内容的类型
await app.ActiveDocument.Bookmarks.Item('WebOffice').StoryType;
}
JSSDK: v1.1.19+ 支持
仅支持PC端
书签内容是否是表格的一列
表达式.ActiveDocument.Bookmarks.Item(Name).Column
表达式:文档类型应用对象。
//@file=base.docx
async function example() {
await instance.ready();
const app = instance.Application;
// 添加书签
await app.ActiveDocument.Bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10,
},
});
// 判断书签内容是否是表格的一列
const column = await app.ActiveDocument.Bookmarks.Item('WebOffice').Column;
console.log(column); // false
}
JSSDK: v1.1.19+ 支持
仅支持PC端
复制书签
表达式.ActiveDocument.Bookmarks.Item(Name1).Copy(Name2)
表达式:文档类型应用对象。
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Name | String | 是 | 书签名 |
//@file=base.docx
async function example() {
await instance.ready();
const app = instance.Application;
// 添加书签
await app.ActiveDocument.Bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10,
},
});
// 复制书签
await app.ActiveDocument.Bookmarks.Item('WebOffice').Copy('NewBookmark');
}
JSSDK: v1.1.19+ 支持
仅支持PC端
选中书签内容
表达式.ActiveDocument.Bookmarks.Item(Name).Select()
表达式:文档类型应用对象。
//@file=base.docx
async function example() {
await instance.ready();
const app = instance.Application;
// 添加书签
await app.ActiveDocument.Bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10,
},
});
// 选中书签内容
await app.ActiveDocument.Bookmarks.Item('WebOffice').Select();
}
JSSDK: v1.1.19+ 支持
仅支持PC端
书签内容是否为空
表达式.ActiveDocument.Bookmarks.Item(Name).Empty
表达式:文档类型应用对象。
//@file=base.docx
async function example() {
await instance.ready();
const app = instance.Application;
// 添加书签
await app.ActiveDocument.Bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10,
},
});
// 判断书签内容是否为空
const isEmpty = await app.ActiveDocument.Bookmarks.Item('WebOffice').Empty;
console.log(isEmpty); // false
}
JSSDK: v1.1.19+ 支持
仅支持PC端
书签内容起始位置
表达式.ActiveDocument.Bookmarks.Item(Name).Start
表达式:文档类型应用对象。
//@file=base.docx
async function example() {
await instance.ready();
const app = instance.Application;
// 添加书签
await app.ActiveDocument.Bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10,
},
});
// 书签内容起始位置
const start = await app.ActiveDocument.Bookmarks.Item('WebOffice').Start;
console.log(start); // 1
}
JSSDK: v1.1.19+ 支持
仅支持PC端
书签内容结束位置
表达式.ActiveDocument.Bookmarks.Item(Name).End
表达式:文档类型应用对象。
//@file=base.docx
async function example() {
await instance.ready();
const app = instance.Application;
// 添加书签
await app.ActiveDocument.Bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10,
},
});
// 书签内容结束位置
const end = await app.ActiveDocument.Bookmarks.Item('WebOffice').End;
console.log(end); // 10
}
JSSDK: v1.1.19+ 支持
仅支持PC端
获取书签内容区域
表达式.ActiveDocument.Bookmarks.Item(Name).Range
表达式:文档类型应用对象。
//@file=base.docx
async function example() {
await instance.ready();
const app = instance.Application;
// 添加书签
await app.ActiveDocument.Bookmarks.Add({
Name: 'WebOffice',
Range: {
Start: 1,
End: 10,
},
});
// 获取书签内容区域
await app.ActiveDocument.Bookmarks.Item('WebOffice').Range;
}