主题
当前文档
ActiveDocument
当前文档
语法
表达式.ActiveDocument
表达式:文档类型应用对象
Bookmarks
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 Bookmarks 集合,该集合代表文档中的所有书签。此为只读属性
语法
表达式.ActiveDocument.Bookmarks
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Bookmarks 对象
const Bookmarks = await app.ActiveDocument.Bookmarks
}
Comments
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 Comments 集合,该集合代表指定文档的所有批注。此为只读属性
语法
表达式.ActiveDocument.Comments
表达式:一个代表 Document 对象的变量。
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Comments 对象
const Comments = await app.ActiveDocument.Comments
}
Content
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 Range 对象,该对象代表主文档文章。只读。
语法
表达式.ActiveDocument.Content
表达式:一个代表 Document 对象的变量。
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Range 对象
const Range = await app.ActiveDocument.Content
// 获取 range 内文本内容信息
const text = await Range.Text
}
ContentControls
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 ContentControls 集合,该集合代表文档中的所有内容控件。此为只读属性
语法
表达式.ActiveDocument.ContentControls
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 ContentControls 对象
const ContentControls = await app.ActiveDocument.ContentControls
}
CustomDocumentProperties
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 DocumentProperties 集合,该集合代表指定文档的所有自定义文档属性
语法
表达式.ActiveDocument.CustomDocumentProperties
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// CustomDocumentProperties 对象
const CustomDocumentProperties = await app.ActiveDocument
.CustomDocumentProperties
}
DocumentFields
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 DocumentFields 集合,该集合代表文档中的所有公文域。此为只读属性
语法
表达式.ActiveDocument.DocumentFields
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 DocumentFields 对象
const DocumentFields = await app.ActiveDocument.DocumentFields
}
Fields
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 Fields 集合,该集合代表文档中的所有域。此为只读属性
语法
表达式.ActiveDocument.Fields
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Fields 对象
const Fields = await app.ActiveDocument.Fields
}
Hyperlinks
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 Hyperlinks 集合,该集合代表指定文档中的所有超链接。此为只读属性
语法
表达式.ActiveDocument.Hyperlinks
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Hyperlinks 对象
const Hyperlinks = await app.ActiveDocument.Hyperlinks
}
InlineShapes
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 InlineShapes 集合,该集合代表文档中的所有 InlineShape 对象。此为只读属性
语法
表达式.ActiveDocument.InlineShapes
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 InlineShapes 对象
const InlineShapes = await app.ActiveDocument.InlineShapes
}
PageSetup
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 PageSetup 对象,该对象与指定文档相关联
语法
表达式.ActiveDocument.PageSetup
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 PageSetup 对象
const PageSetup = await app.ActiveDocument.PageSetup
}
ReadOnly
JSSDK: v1.1.14+、WebOffice v3.3.1+ 支持
返回一个值,表示文档是否只读,此属性为只读属性。
语法
表达式.ActiveDocument.ReadOnly
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
const ReadOnly = await app.ActiveDocument.ReadOnly
}
ReadOnlyComment
JSSDK: v1.1.15+、WebOffice v4.2.1+ 支持
返回一个值,表示文档是否只读可评论的权限,此属性为只读属性。
语法
表达式.ActiveDocument.ReadOnlyComment
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
const ReadOnlyComment = await app.ActiveDocument.ReadOnlyComment
}
Revisions
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 Revisions 集合,该集合代表区域或文档中标有修订标记的更改。此为只读属性
语法
表达式.ActiveDocument.Revisions
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Revisions 对象
const Revisions = await app.ActiveDocument.Revisions
}
Sections
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 Section 集合,该集合代表指定文档中的各个节。此为只读属性
语法
表达式.ActiveDocument.Sections
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Sections 对象
const Sections = await app.ActiveDocument.Sections
}
Shapes
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 Shapes 集合,该集合代表文档中的所有 Shape 对象。此为只读属性
语法
表达式.ActiveDocument.Shapes
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Shapes 对象
const Shapes = await app.ActiveDocument.Shapes
}
SupportReadOnlyComment
JSSDK: v1.1.15+、WebOffice v4.2.1+ 支持
返回一个值,表示文档是否支持只读可评论权限,此属性为只读属性。
语法
表达式.ActiveDocument.SupportReadOnlyComment
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
const SupportReadOnlyComment = await app.ActiveDocument.SupportReadOnlyComment
}
Tables
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 Table 集合,该集合代表指定文档中的所有表格。此为只读属性
语法
表达式.ActiveDocument.Tables
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Tables 对象
const Tables = await app.ActiveDocument.Tables
}
TrackRevisions
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
编辑与修订模式切换
获取当前页面是否为修订状态需要 JSSDK:v1.1.15+、WebOffice v3.4.1+ 支持
语法
表达式.ActiveDocument.TrackRevisions = Boolean
表达式:文档类型应用对象。
如果 Boolean
值为 true
,则表明切换到修订模式,否则为编辑模式。
示例 1:切换修订模式和编辑模式
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 将当前文档的编辑状态切换成修订模式
app.ActiveDocument.TrackRevisions = true
}
示例 2:获取页面是否处于修订模式
注:需要 JSSDK:v1.1.15+、WebOffice v3.4.1+ 支持
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取页面是否处于修订模式
const TrackRevisions = await app.ActiveDocument.TrackRevisions
console.log(TrackRevisions)
}
ActiveWindows
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 Windows 集合,该集合代表指定文档的所有窗口。此为只读属性
语法
表达式.ActiveDocument.ActiveWindows
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Windows 对象
const Windows = await app.ActiveDocument.ActiveWindows
}
Words
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 Words 集合,该集合代表文档中的所有单词。此为只读属性
语法
表达式.ActiveDocument.Words
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Words 对象
const Words = await app.ActiveDocument.Words
}
AcceptAllRevisionsShown()
JSSDK: v1.1.10+、WebOffice v2.3.1+ 支持
控制接受文档中指定审阅者的所有修订,详细配合可参考 Reviewer.Visible
语法
表达式.ActiveDocument.AcceptAllRevisionsShown()
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取第 1 个代表已修订过的文档的单个审阅者
const ActiveDocument =
await app.ActiveDocument.ActiveWindow.View.ActiveDocuments.Item(1)
// 控制接受文档中指定审阅者的所有修订
ActiveDocument.Visible = true
// 接受文档中指定审阅者的所有修订
await app.ActiveDocument.AcceptAllRevisionsShown()
}
BuiltinDocumentProperties()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
文档的所有内置文档属性
语法
表达式.ActiveDocument.BuiltinDocumentProperties()
表达式:文档类型应用对象
DeleteAllComments()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
删除文档内的所有评论
语法
表达式.ActiveDocument.DeleteAllComments()
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 删除文档内的所有评论
await app.ActiveDocument.DeleteAllComments()
}
DeleteAllCommentsShown()
JSSDK: v1.1.10+、WebOffice v2.3.1+ 支持
删除文档中指定审阅者的所有评论,详细配合可参考 Reviewer.Visible
语法
表达式.ActiveDocument.DeleteAllCommentsShown()
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取第 1 个代表已修订过的文档的单个审阅者
const ActiveDocument =
await app.ActiveDocument.ActiveWindow.View.ActiveDocuments.Item(1)
// 控制删除文档中指定审阅者的所有评论
ActiveDocument.Visible = true
// 删除文档中指定审阅者的所有评论
await app.ActiveDocument.DeleteAllCommentsShown()
}
ExportAsFixedFormat()
导出当前文件为对应的 PDF
或者 Img
图片,并获取导出后的 url
语法
表达式.ActiveDocument.ExportAsFixedFormat({ OutputFileName, ExportFormat })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
OutputFileName | String | 可选 | 【暂不支持】导出的文件名称 | |
ExportFormat | Enum | wdExportFormatPDF | 可选 | 导出的类型,详细可参考 Enum.WdExportFormat,目前仅支持导出图片和导出 PDF |
OpenAfterExport | Boolean | 可选 | 【暂不支持】导出内容后打开新文件 | |
OptimizeFor | Enum | 可选 | 【暂不支持】指定是针对屏幕显示还是打印进行优化,详细可参考 Enum.WdExportOptimizeFor | |
Range | Enum | 可选 | 指定导出区域是整个文档、当前页面、文本区域还是当前所选内容。默认值是导出整个文档,详细可参考 Enum.WdExportRange | |
From | Number | 可选 | 如果 Range 参数设置为 wdExportFromTo,则指定起始页码 | |
To | Number | 可选 | 如果 Range 参数设置为 wdExportFromTo,则指定结束页码 | |
Item | Enum | 可选 | 指定导出过程是只包括文本还是包括文本和标记,详细可参考 Enum.WdExportItem | |
IncludeDocProps | Boolean | 可选 | 指定在最新导出的文件中是否包括文档属性 | |
KeepIRM | Boolean | 可选 | 【暂不支持】指定是否将 IRM 权限复制到 XPS 文档,如果在源文档具有 IRM 保护。默认值为 true | |
CreateBookmarks | Enum | 可选 | 【暂不支持】指定是否导出书签和要导出的书签的类型,详细可参考 Enum.WdExportCreateBookmarks | |
DocStructureTags | Boolean | true | 可选 | 【暂不支持】指定是否包含额外数据来帮助屏幕阅读器,例如有关的流和逻辑组织的内容的信息 |
BitmapMissingFonts | Boolean | true | 可选 | 【暂不支持】指定是否包含文本的位图。 当字体许可不允许在 PDF 文件中嵌入某一字体时,请将此参数设置为 true 。如果 false ,则引用该字体,和查看者的计算机会替换合适的字体,如果编写的一个不可用 |
UseISO19005_1 | Boolean | false | 可选 | 【暂不支持】指定是否限制对 PDF 子集的 PDF 使用按照 ISO 标准化 19005-1。 如果 true ,所产生的文件会更加可靠地自我包含,但可能会更大或显示更多的视觉瑕疵,由于受到格式的限制 |
FixedFormatExtClassPtr | Enum | 可选 | 【暂不支持】指定一个指针以指向一个允许对代码的备用实现进行调用的加载项。代码的备用实现将对应用程序生成的 EMF 和 EMF+ 页面描述进行解释,以生成其自身的 PDF 或 XPS | |
Dpi | Number | 96 | 可选 | 导出图片的 dpi |
Combine2LongPic | Boolean | false | 可选 | 是否输出为长图 |
ImgFormat | Enum | wdExportFormatPNG | 可选 | 导出图片的格式,详细可参考 Enum.WdExportImgFormat |
WaterMark | Boolean | false | 可选 | 带水印还是无水印 |
返回值
返回打印后 String
型的 url
。
示例 1:导出 PDF
该 url 可在控制台查看
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 导出 PDF,并获取导出后的 url
const pdfUrl = await app.ActiveDocument.ExportAsFixedFormat() // 默认导出 PDF,所以可以不传参
console.log(pdfUrl)
}
示例 2:导出图片
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 导出 PDF,并获取导出后的 url
const pdfUrl = await app.ActiveDocument.ExportAsFixedFormat({
ExportFormat: app.Enum.WdExportFormat.wdExportFormatIMG
}) // 或者传参 19
console.log(pdfUrl)
}
GetAtList()
JSSDK: v1.1.9+、WebOffice v2.3.1+ 支持
提供获取文本中 @ 人列表
语法
表达式.ActiveDocument.GetAtList()
表达式:文档类型应用对象
返回值
返回对应的 @ 人列表数组,包含 uuid
字段
示例
async function example() {
await instance.ready()
const app = instance.Application
// 提供获取文本中 @ 人列表
const atInfo = await app.ActiveDocument.GetAtList()
console.log(atInfo)
}
GetAtPos()
JSSDK: v1.1.9+、WebOffice v2.3.1+ 支持
通过 UUID 获取 @ 的 Range 对象
语法
表达式.ActiveDocument.GetAtPos({ Uuid })
表达式:文档类型应用对象
参数
传入一个@的 UUID。
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Uuid | string | 无 | 是 | UUID |
示例
async function example() {
await instance.ready()
const app = instance.Application
// 通过 UUID 获取 @ 的 Range 对象
const range = await app.ActiveDocument.GetAtPos()
console.log(range)
}
GetComments({ Offset, Limit })
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
获取全文评论
语法
表达式.ActiveDocument.GetComments({ Offset, Limit })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Offset | Number | 是 | 起始位置 | |
Limit | Number | 是 | 限制条数 |
由于文字文档是流式排版, 在大文档时且
Limit - Offset
较大时,获取时间时间会比较长,建议加一个中间loading
过渡效果。
返回值
**Array.<Object>**
WebOffice v1.67.1+ 版本后返回值
属性 | 数据类型 | 说明 |
---|---|---|
auth | String | 评论人 |
content | String | 内容 |
date | Date | 评论时间 |
WebOffice v3.3.1+ 版本后返回值:
属性 | 数据类型 | 说明 |
---|---|---|
commentId | String | 评论的 id |
replyCommentId | String | 所回复评论的 id |
userId | Date | 评论所属用户的用户 id |
author | Date | 评论所属用户的名称 |
content | Date | 评论内容 |
date | Date | 评论时间 |
pos | Date | 评论对应正文内容的起始位置 |
len | Date | 评论对应正文的长度 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取全文评论
const operatorsInfo = await app.ActiveDocument.GetComments({
Offset: 0,
Limit: 20
})
console.log(operatorsInfo)
}
GetContainerAttributes()
JSSDK: v1.1.14+、WebOffice v3.3.1+ 支持
获取正文容器的尺寸信息
语法
表达式.ActiveDocument.GetContainerAttributes()
表达式:文档类型应用对象
返回值
属性 | 数据类型 | 说明 |
---|---|---|
Width | Number | 宽度 |
Height | Number | 高度 |
OffsetLeft | Number | 当前元素左上角相对于 HTMLElement.offsetParent 节点的左边界偏移的像素值 |
OffsetTop | Number | 当前元素相对于其 offsetParent 元素的顶部内边距的距离 |
ClientWidth | Number | 元素的内部宽度 |
ClientHeight | Number | 元素的内部高度 |
OffsetWidth | Number | 元素的布局宽度 |
OffsetHeight | Number | 元素的布局高度 |
ScrollTop | Number | 这个元素的内容顶部(卷起来的)到它的视口可见内容(的顶部)的距离的度量 |
ScrollLeft | Number | 这个元素的内容顶部(卷起来的)到它的视口可见内容(的左侧)的距离的度量 |
ScrollHeight | Number | 元素内容高度的度量 |
ScrollWidth | Number | 元素内容宽度的度量 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取正文容器的尺寸信息
const info = await app.ActiveDocument.GetContainerAttributes()
console.log(info)
}
GetDocumentRange()
JSSDK: v1.1.14+、WebOffice v3.3.1+ 支持
获取全文范围
语法
表达式.ActiveDocument.GetDocumentRange()
表达式:文档类型应用对象
返回值
返回 Range 表示全文的区域范围
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取全文范围
const range = await app.ActiveDocument.GetDocumentRange()
console.log(range)
}
GetMissingFontList()
JSSDK: v1.1.15+、WebOffice v4.2.1+ 支持
获取所有缺失的字体列表
语法
表达式.ActiveDocument.GetMissingFontList()
表达式:文档类型应用对象
返回值
缺失的字体列表
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
const list = await app.ActiveDocument.GetMissingFontList()
console.log('list: ', list)
}
GetOnlineCooperatorList()
JSSDK: v1.1.14+、WebOffice v3.3.1+ 支持
获取在线协作用户的列表
语法
表达式.ActiveDocument.GetOnlineCooperatorList()
表达式:文档类型应用对象
返回值
Array.<Object>
属性 | 数据类型 | 说明 |
---|---|---|
Avatar | String | 用户头像地址 |
UserName | String | 用户名称 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取在线协作用户的列表
const operatorsInfo = await app.ActiveDocument.GetOnlineCooperatorList()
console.log(operatorsInfo)
}
GetOperatorsInfo()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
获取当前登录操作者信息
语法
表达式.ActiveDocument.GetOperatorsInfo()
表达式:文档类型应用对象
返回值
Object object
属性 | 数据类型 | 说明 |
---|---|---|
type | String | 请求类型 |
response | Object | 用户信息列表 |
response 说明
属性 | 数据类型 | 说明 |
---|---|---|
id | String | 用户 id |
avatar_url | Object | 用户头像 |
logined | Object | 用户登录状态 |
name | Object | 用户姓名 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取当前登录操作者信息
const operatorsInfo = await app.ActiveDocument.GetOperatorsInfo()
console.log(operatorsInfo)
}
GetViewMode()
JSSDK: v1.1.14+、WebOffice v3.3.1+ 支持
获取当前页面版式
语法
表达式.ActiveDocument.GetViewMode()
表达式:文档类型应用对象
返回值
返回 web
为连页模式,pages
为分页模式
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取当前页面版式
const mode = await app.ActiveDocument.GetViewMode()
console.log(mode)
}
GetWatermark()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
安全文档中获取水印
语法
表达式.ActiveDocument.GetWatermark()
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 安全文档中获取水印
const watermarkInfo = await app.ActiveDocument.GetWatermark()
console.log(watermarkInfo)
}
HasComments()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
是否有评论
语法
表达式.ActiveDocument.HasComments()
表达式:文档类型应用对象
返回值
返回 Boolean
,为 true
表明有评论,否则没评论
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 是否有评论
const hasComments = await app.ActiveDocument.HasComments()
console.log(hasComments) // true|false
}
ImportDataIntoFields()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
根据传入数据及配置匹配文档中的内容部件并替换内容
语法
表达式.ActiveDocument.ImportDataIntoFields({ Data, Options })
表达式:文档类型应用对象
参数
传入一个@的 UUID。
| 属性 | 数据类型 | 默认值 | 必填 | 说明 | | ------- | -------- | ------ | ---- | ----------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------- | | Data | Object | | 是 | 包含单项、多项或嵌套字段,多项字段进行复制粘贴后统一进行替换,嵌套字段会对 key 进行拼接。注意:目前仅支持 Data: { content: value }
形式 | | Options | Object | | 否 | 导入配置。目前仅支持 Options: { keyword: 1 | 2 }
,其中 1 是指标题 Title,2 是指标签 Tag |
示例
async function example() {
await instance.ready()
const app = instance.Application
// 根据传入数据及配置匹配文档中的内容部件并替换内容
// 如果找不到该内容,则往文末插入文本
// 这里假设有一个 Title 为 jssdk 的内容控件
await app.ActiveDocument.ImportDataIntoFields({
Data: {
jssdk: 'jssdk2'
},
Options: {
keyword: 1
}
})
}
Protect({ Password })
JSSDK: v1.1.15+、WebOffice v4.2.1+ 支持
开启限制编辑
语法
表达式.ActiveDocument.Protect({ Password })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Password | String | - | 否 | 设置的密码 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 开启限制编辑
await app.ActiveDocument.Protect('test')
// 停止限制编辑
await app.ActiveDocument.Unprotect('test')
}
Range
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
使用指定的起始字符和结束字符位置返回一个 Range 对象
语法
表达式.ActiveDocument.Range
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Range 对象
const Range = await app.ActiveDocument.Range
}
RejectAllRevisionsShown()
JSSDK: v1.1.10+、WebOffice v2.3.1+ 支持
控制拒绝文档中指定审阅者的所有修订,详细配合可参考 Reviewer.Visible
语法
表达式.ActiveDocument.RejectAllRevisionsShown()
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取第 1 个代表已修订过的文档的单个审阅者
const ActiveDocument =
await app.ActiveDocument.ActiveWindow.View.ActiveDocuments.Item(1)
// 控制拒绝文档中指定审阅者的所有修订
ActiveDocument.Visible = true
// 拒绝文档中指定审阅者的所有修订
await app.ActiveDocument.RejectAllRevisionsShown()
}
ReplaceText()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
根据传入数组全文匹配并替换文本
语法
表达式.ActiveDocument.ReplaceText(Array.<Object>)
表达式:文档类型应用对象
参数
传入一个数组,表明需要替换的文本列表。
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
list | Array.<Object> | 是 | 要替换的文本列表 |
list 说明
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
key | String | 是 | 被替换的文本 | |
value | String | 是 | 替换的文本 | |
options | Object | 否 | 替换配置 |
#options 说明
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
isWildcardMatched | Boolean | 否 | 使用通配符 | |
isCaseSensitive | Boolean | 否 | 区分大小写 | |
isWholeWordMatched | Boolean | 否 | 全字匹配 | |
isWidthIgnored | Boolean | 否 | 忽略全/半角 |
返回值
返回 Boolean
值,为 true
表明替换成功,为 false
表明替换失败。
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
const isSuccess = await app.ActiveDocument.ReplaceText([
{
key: 'WebOffice',
value: 'js-sdk'
}
])
console.log(isSuccess) // true
}
Save()
JSSDK: v1.1.9+、WebOffice v2.3.1+ 支持
保存文件的改动
语法
表达式.ActiveDocument.Save()
表达式:文档类型应用对象
返回值
属性 | 数据类型 | 说明 |
---|---|---|
result | String | 保存状态 |
size | Number | 文件大小,单位 byte |
version | Number | 版本 |
保存状态说明:
保存状态 | 说明 |
---|---|
ok | 版本保存成功,可在历史版本中查看 |
nochange | 文档无更新,无需保存版本 |
SavedEmptyFile | 暂不支持保存空文件 触发场景:内核保存完后文件为空 |
SpaceFull | 空间已满 |
QueneFull | 保存中请勿频繁操作 触发场景:服务端处理保存队列已满,正在排队 |
fail | 保存失败 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 保存文件的改动
const save = await app.ActiveDocument.Save()
console.log(save)
}
ScrollTo({ ScrollLeft, ScrollTop })
JSSDK: v1.1.14+、WebOffice v3.3.1+ 支持
滚动正文容器到指定位置
语法
表达式.ActiveDocument.ScrollTo({ ScrollLeft, ScrollTop })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
ScrollLeft | Number | 是 | 横向滚动距离 | |
ScrollTop | Number | 是 | 纵向滚动距离 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 滚动正文容器到指定位置
await app.ActiveDocument.ScrollTo({ ScrollLeft: 0, ScrollTop: 20 })
}
SetCommentEnabled()
JSSDK: v1.1.14+、WebOffice v3.3.1+ 支持
隐藏评论相关功能(当前仅移动端有效)
语法
表达式.ActiveDocument.SetCommentEnabled({ Enable })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Enable | Boolean | 是 | 是否隐藏 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 设置为隐藏
await app.ActiveDocument.SetCommentEnabled({
Enable: true
})
}
SetContentControlAuthority({ DefaultPermission, Permissions })
JSSDK: v1.1.17+、WebOffice v4.3.1+ 支持
需要开启配置
__CONFIG__.wps.enableContentControlACL
,目前 WebOffice 开放平台环境未开启该功能
设置内容控件只读权限
语法
表达式.ActiveDocument.SetContentControlAuthority({ DefaultPermission, Permissions })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
DefaultPermission | String | - | 否 | 默认文档内容控件权限,read: 只读权限,edit: 编辑权限 |
Permissions | Array.<Object> | - | 否 | 单个内容控件权限列表 |
Permissions 说明
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
tag | String | 是 | 内容控件 Tag | |
access | String | 是 | 内容控件权限,read: 只读权限,edit: 编辑权限 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 开启限制编辑
await app.ActiveDocument.Protect()
// 文档内容控件开启只读权限,Tag为test的控件设置为编辑权限
await app.ActiveDocument.SetContentControlAuthority('read', [
{ tag: 'test', access: 'edit' }
])
}
SetReadOnly()
JSSDK: v1.1.14+、WebOffice v3.3.1+ 支持
将打开的文档临时设置为只读
请注意:
- 只读状态为本地临时状态,只对当前标签页打开的文档有效,刷新后失效。
- 只能将有编辑权限的文档临时设置为不可编辑,然后取消。
- 无法把一个只读权限的文档弄成可编辑的。
语法
表达式.ActiveDocument.SetReadOnly({ Value })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Value | Boolean | 是 | 是否设置为只读 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 设置为只读
await app.ActiveDocument.SetReadOnly({
Value: true
})
}
SetScrollBarStyle({ BackgroundColor, HoverBackgroundColor, ScrollBarWidth, BorderRadius })
JSSDK: v1.1.18+、WebOffice v5.2.1+ 支持
设置正文滚动条样式
注:只针对 webkit 内核浏览器生效
语法
表达式.ActiveDocument.SetScrollBarStyle({ BackgroundColor, HoverBackgroundColor, ScrollBarWidth, BorderRadius })
表达式:文档类型应用对象
参数
传入一个对象,表明需要设置的滚动条样式。
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
BackgroundColor | String | - | 否 | 滚动条背景色 |
HoverBackgroundColor | String | - | 否 | 滚动条 hover 背景色 |
ScrollBarWidth | Number | - | 否 | 滚动条宽度 (有效范围为 0-100) |
BorderRadius | Number | - | 否 | 滚动条圆角值 (负值无效) |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 设置滚动条样式
await app.ActiveDocument.SetScrollBarStyle({
BackgroundColor: '#FFFFFF',
HoverBackgroundColor: '#ffffff',
ScrollBarWidth: 6,
BorderRadius: 6
})
}
SetWatermark()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
安全文档中设置水印
语法
表达式.ActiveDocument.SetWatermark({ Type, Value, FillStyle, Font, Rotate, Horizontal, Vertical })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Type | Number | 是 | 有无水印。1 有 0 无 | |
Value | String | 是 | 水印文字 | |
FillStyle | Object | 否 | 水印填充样式 | |
Font | Object | 否 | 水印字体 | |
Rotate | Number | 否 | 旋转 | |
Horizontal | Number | 否 | 水平间距 | |
Vertical | Number | 否 | 垂直间距 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 安全文档中设置水印
await app.ActiveDocument.SetWatermark({
Type: 1,
Value: 'WebOffice',
FileStyle: 'rgba(192, 192, 192, 0.6)',
Font: 'bold 20px Serif',
Rotate: (-45 * Math.PI) / 180,
Horizontal: 50,
Vertical: 100
})
}
SwitchFileName(Boolean)
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
显示/不显示文件名栏
注 1:需要连页模式下才生效,非连页模式下设置了也不会生效
注 2:文件名栏是指连页模式下,在内容开头会显示文件名相关栏
语法
表达式. ActiveDocument.SwitchFileName(Boolean)
表达式:文档类型应用对象
参数 Boolean
为 true
表示显示文件名栏,为 false
表示隐藏文件名栏。
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 分页/连页模式切换
await app.ActiveDocument.SwitchTypoMode(true)
// 显示/不显示文件名栏
await app.ActiveDocument.SwitchFileName(false)
}
SwitchTypoMode(Boolean)
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
分页/连页模式切换
语法
表达式.ActiveDocument.SwitchTypoMode(Boolean)
表达式:文档类型应用对象
Boolean
参数,为 true
表示切换到连页模式,为 false
表示切换到分页模式。
返回值
Boolean
返回值,为 true
表示切换成功,为 false
表示切换失败
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 分页/连页模式切换
await app.ActiveDocument.SwitchTypoMode(false)
}
Unprotect({ Password })
JSSDK: v1.1.15+、WebOffice v4.2.1+ 支持
停止限制编辑
语法
表达式.ActiveDocument.Unprotect({ Password })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Password | String | - | 否 | 设置的密码 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 开启限制编辑
await app.ActiveDocument.Protect('test')
// 停止限制编辑
await app.ActiveDocument.Unprotect('test')
}