主题
书签(Bookmarks)
Bookmark 对象的集合,这些对象代表指定选定内容、范围或文档中的书签
属性列表
方法 | 说明 |
---|---|
获取书签个数 | |
获取和设置书签排序 |
方法列表
方法 | 说明 |
---|---|
添加书签 | |
获取书签内容 | |
获取所有书签 | |
替换书签内容 | |
判断书签是否存在 | |
书签集合的单个书签 | |
获取书签名称 | |
删除书签 | |
获取书签内容的类型 | |
书签内容是否是表格的一列 | |
复制书签 | |
选中书签内容 | |
书签内容是否为空 | |
书签内容起始位置 | |
书签内容结束位置 | |
获取书签内容区域 |
Count
JSSDK: v1.1.19+ 支持
仅支持PC端
获取书签个数
语法
表达式.ActiveDocument.Bookmarks.Count
表达式:文档类型应用对象。
返回值
返回 Number
代表文档内容控件的数量。
示例
js
//@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);
}
DefaultSorting
JSSDK: v1.1.19+ 支持
仅支持PC端
获取和设置书签排序
语法
表达式.ActiveDocument.Bookmarks.DefaultSorting = WdBookmarkSortBy
表达式:文档类型应用对象。
设置书签排序时,WdBookmarkSortBy
详细可参考: Enum.WdBookmarkSortBy
示例
js
//@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;
}
Add()
仅支持 PC 端
添加书签
注意
该方法暂不支持移动端
语法
表达式.ActiveDocument.Bookmarks.Add({ Name, Range })
表达式:文档类型应用对象。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Name | string | 是 | 书签名。书签名不能多于一个单词。 | |
Range | range {} | 是 | 书签标记的文本区域。可将书签设置到一个折叠的区域(插入点)。 |
注意
Name
书签名不能重复,首字符不能使用数字和下划线,不能含有空格、.
等特殊符号
示例
js
//@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
}
})
}
GetBookmarkText(Name)
仅支持 PC 端
获取书签内容
语法
表达式.ActiveDocument.Bookmarks.GetBookmarkText(Name)
表达式:文档类型应用对象。
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Name | String | 是 | 书签名 |
返回值
返回对应的书签内容
示例
js
//@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)
}
Json()
仅支持 PC 端
获取所有书签
语法
表达式.ActiveDocument.Bookmarks.Json()
表达式:文档类型应用对象。
返回值
属性 | 数据类型 | 说明 |
---|---|---|
name | String | 书签名 |
begin | Number | 书签开始位置 |
end | Number | 书签结束位置 |
示例
js
//@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)
}
ReplaceBookmark(Data)
仅支持 PC 端
替换书签内容
语法
表达式.ActiveDocument.Bookmarks.ReplaceBookmark(Data)
表达式:文档类型应用对象。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Data | Data [] | 是 | 替换内容结构体 |
返回值
返回 Boolean
,为 true
表示替换成功,否则失败。
示例
js
//@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
}
Exists(Name)
JSSDK: v1.1.19+ 支持
仅支持PC端
判断书签是否存在
语法
表达式.ActiveDocument.Bookmarks.Exists(Name)
表达式:文档类型应用对象。
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Name | String | 是 | 书签名 |
返回值
返回 Boolean
,为 true
表示书签存在,否则不存在。
示例
js
//@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
}
Item(Name)
仅支持 PC 端
书签集合的单个书签
语法
表达式.ActiveDocument.Bookmarks.Item(Name)
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Name | String | 是 | 书签名 |
示例
js
//@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')
}
Item(Name).Name
仅支持 PC 端
获取书签名称
语法
表达式.ActiveDocument.Bookmarks.Item(Name).Name
表达式:文档类型应用对象。
示例
js
//@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
}
Item(Name).Delete()
仅支持 PC 端
删除书签
语法
表达式.ActiveDocument.Bookmarks.Item(Name).Delete()
表达式:文档类型应用对象。
示例
js
//@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()
}
Item(Name).StoryType
JSSDK: v1.1.19+ 支持
仅支持PC端
获取书签内容的类型
语法
表达式.ActiveDocument.Bookmarks.Item(Name).StoryType
表达式:文档类型应用对象。
书签内容的类型,WdStoryType
详细可参考: Enum.WdStoryType
示例
js
//@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;
}
Item(Name).Column
JSSDK: v1.1.19+ 支持
仅支持PC端
书签内容是否是表格的一列
语法
表达式.ActiveDocument.Bookmarks.Item(Name).Column
表达式:文档类型应用对象。
示例
js
//@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
}
Item(Name1).Copy(Name2)
JSSDK: v1.1.19+ 支持
仅支持PC端
复制书签
语法
表达式.ActiveDocument.Bookmarks.Item(Name1).Copy(Name2)
表达式:文档类型应用对象。
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Name | String | 是 | 书签名 |
示例
js
//@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');
}
Item(Name).Select()
JSSDK: v1.1.19+ 支持
仅支持PC端
选中书签内容
语法
表达式.ActiveDocument.Bookmarks.Item(Name).Select()
表达式:文档类型应用对象。
示例
js
//@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();
}
Item(Name).Empty
JSSDK: v1.1.19+ 支持
仅支持PC端
书签内容是否为空
语法
表达式.ActiveDocument.Bookmarks.Item(Name).Empty
表达式:文档类型应用对象。
示例
js
//@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
}
Item(Name).Start
JSSDK: v1.1.19+ 支持
仅支持PC端
书签内容起始位置
语法
表达式.ActiveDocument.Bookmarks.Item(Name).Start
表达式:文档类型应用对象。
示例
js
//@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
}
Item(Name).End
JSSDK: v1.1.19+ 支持
仅支持PC端
书签内容结束位置
语法
表达式.ActiveDocument.Bookmarks.Item(Name).End
表达式:文档类型应用对象。
示例
js
//@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
}
Item(Name).Range
JSSDK: v1.1.19+ 支持
仅支持PC端
获取书签内容区域
语法
表达式.ActiveDocument.Bookmarks.Item(Name).Range
表达式:文档类型应用对象。
示例
js
//@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;
}