深色模式
控制台
当前文档实例,该对象内封装了丰富的方法供开发者调用,也是其它实用对象的入口。
属性 | 说明 |
---|---|
返回一个值,表示文档是否只读,此属性为只读属性。 | |
返回一个值,表示文档是否只读可评论的权限,此属性为只读属性。 | |
返回一个值,表示文档是否支持只读可评论权限,此属性为只读属性。 | |
编辑与修订模式切换 | |
返回一个 PageSetup 对象,该对象与指定文档相关联 | |
返回一个 Windows 集合,该集合代表指定文档的所有窗口。此为只读属性 | |
返回一个 Range 对象,该对象代表主文档文章。只读。 | |
使用指定的起始字符和结束字符位置返回一个 Range 对象 | |
返回一个 Section 集合,该集合代表指定文档中的各个节。此为只读属性 | |
返回一个 ContentControls 集合,该集合代表文档中的所有内容控件。此为只读属性 | |
返回一个 DocumentProperties 集合,该集合代表指定文档的所有自定义文档属性 | |
返回一个 Bookmarks 集合,该集合代表文档中的所有书签。此为只读属性 | |
返回一个 Comments 集合,该集合代表指定文档的所有批注。此为只读属性 | |
返回一个 DocumentFields 集合,该集合代表文档中的所有公文域。此为只读属性 | |
返回一个 Fields 集合,该集合代表文档中的所有域。此为只读属性 | |
返回一个 Hyperlinks 集合,该集合代表指定文档中的所有超链接。此为只读属性 | |
返回一个 InlineShapes 集合,该集合代表文档中的所有 InlineShape 对象。此为只读属性 | |
返回一个 Revisions 集合,该集合代表区域或文档中标有修订标记的更改。此为只读属性 | |
返回一个 Table 集合,该集合代表指定文档中的所有表格。此为只读属性 | |
返回一个 Words 集合,该集合代表文档中的所有单词。此为只读属性 | |
返回一个文档限制编辑模式(可以判断是否开启Protect) Enum.WdRestrictEditMode 。此为只读属性 |
方法 | 说明 |
---|---|
控制接受文档中指定审阅者的所有修订,详细配合可参考 Reviewer.Visible | |
文档的所有内置文档属性 | |
删除文档内的所有评论 | |
删除文档中指定审阅者的所有评论,详细配合可参考 Reviewer.Visible | |
导出当前文件为对应的 PDF 或者 Img 图片,并获取导出后的 url | |
提供获取文本中 @ 人列表 | |
通过 UUID 获取 @ 的 Range 对象 | |
获取全文评论 | |
获取正文容器的尺寸信息 | |
获取全文范围 | |
获取所有缺失的字体列表 | |
获取在线协作用户的列表 | |
获取当前登录操作者信息 | |
获取当前页面版式 | |
安全文档中获取水印 | |
安全文档中设置水印 | |
是否有评论 | |
根据传入数据及配置匹配文档中的内容部件并替换内容 | |
开启限制编辑 | |
控制拒绝文档中指定审阅者的所有修订,详细配合可参考 Reviewer.Visible | |
根据传入数组全文匹配并替换文本 | |
保存文件的改动 | |
滚动正文容器到指定位置 | |
隐藏评论相关功能(当前仅移动端有效) | |
设置内容控件只读权限 | |
将打开的文档临时设置为只读 | |
设置正文滚动条样式 | |
显示/不显示文件名栏 | |
分页/连页模式切换 | |
停止限制编辑 |
返回一个值,表示文档是否只读,此属性为只读属性。
表达式.ActiveDocument.ReadOnly
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
const ReadOnly = await app.ActiveDocument.ReadOnly
}
返回一个值,表示文档是否只读可评论的权限,此属性为只读属性。
表达式.ActiveDocument.ReadOnlyComment
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
const ReadOnlyComment = await app.ActiveDocument.ReadOnlyComment
}
返回一个值,表示文档是否支持只读可评论权限,此属性为只读属性。
表达式.ActiveDocument.SupportReadOnlyComment
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
const SupportReadOnlyComment = await app.ActiveDocument.SupportReadOnlyComment
}
编辑与修订模式切换
获取当前页面是否为修订状态需要 JSSDK:v1.1.15+ 支持
表达式.ActiveDocument.TrackRevisions = Boolean
表达式:文档类型应用对象。
如果 Boolean
值为 true
,则表明切换到修订模式,否则为编辑模式。
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 将当前文档的编辑状态切换成修订模式
app.ActiveDocument.TrackRevisions = true
}
注:需要 JSSDK:v1.1.15+ 支持
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取页面是否处于修订模式
const TrackRevisions = await app.ActiveDocument.TrackRevisions
console.log(TrackRevisions)
}
返回一个 PageSetup 对象,该对象与指定文档相关联
表达式.ActiveDocument.PageSetup
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 PageSetup 对象
const PageSetup = await app.ActiveDocument.PageSetup
}
返回一个 Windows 集合,该集合代表指定文档的所有窗口。此为只读属性
表达式.ActiveDocument.ActiveWindows
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Windows 对象
const Windows = await app.ActiveDocument.ActiveWindows
}
返回一个 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
}
使用指定的起始字符和结束字符位置返回一个 Range 对象
表达式.ActiveDocument.Range
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Range 对象
const Range = await app.ActiveDocument.Range
}
返回一个 Section 集合,该集合代表指定文档中的各个节。此为只读属性
表达式.ActiveDocument.Sections
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Sections 对象
const Sections = await app.ActiveDocument.Sections
}
返回一个 ContentControls 集合,该集合代表文档中的所有内容控件。此为只读属性
表达式.ActiveDocument.ContentControls
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 ContentControls 对象
const ContentControls = await app.ActiveDocument.ContentControls
}
返回一个 DocumentProperties 集合,该集合代表指定文档的所有自定义文档属性
表达式.ActiveDocument.CustomDocumentProperties
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// CustomDocumentProperties 对象
const CustomDocumentProperties = await app.ActiveDocument
.CustomDocumentProperties
}
返回一个 Bookmarks 集合,该集合代表文档中的所有书签。此为只读属性
表达式.ActiveDocument.Bookmarks
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Bookmarks 对象
const Bookmarks = await app.ActiveDocument.Bookmarks
}
返回一个 Comments 集合,该集合代表指定文档的所有批注。此为只读属性
表达式.ActiveDocument.Comments
表达式:一个代表 Document 对象的变量。
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Comments 对象
const Comments = await app.ActiveDocument.Comments
}
返回一个 DocumentFields 集合,该集合代表文档中的所有公文域。此为只读属性
表达式.ActiveDocument.DocumentFields
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 DocumentFields 对象
const DocumentFields = await app.ActiveDocument.DocumentFields
}
返回一个 Fields 集合,该集合代表文档中的所有域。此为只读属性
表达式.ActiveDocument.Fields
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Fields 对象
const Fields = await app.ActiveDocument.Fields
}
返回一个 Hyperlinks 集合,该集合代表指定文档中的所有超链接。此为只读属性
表达式.ActiveDocument.Hyperlinks
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Hyperlinks 对象
const Hyperlinks = await app.ActiveDocument.Hyperlinks
}
返回一个 Shapes 集合,该集合代表文档中的所有 Shape 对象。此为只读属性
表达式.ActiveDocument.Shapes
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Shapes 对象
const Shapes = await app.ActiveDocument.Shapes
}
返回一个 InlineShapes 集合,该集合代表文档中的所有 InlineShape 对象。此为只读属性
表达式.ActiveDocument.InlineShapes
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 InlineShapes 对象
const InlineShapes = await app.ActiveDocument.InlineShapes
}
返回一个 Revisions 集合,该集合代表区域或文档中标有修订标记的更改。此为只读属性
表达式.ActiveDocument.Revisions
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Revisions 对象
const Revisions = await app.ActiveDocument.Revisions
}
返回一个 Table 集合,该集合代表指定文档中的所有表格。此为只读属性
表达式.ActiveDocument.Tables
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Tables 对象
const Tables = await app.ActiveDocument.Tables
}
返回一个 Words 集合,该集合代表文档中的所有单词。此为只读属性
表达式.ActiveDocument.Words
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回一个 Words 对象
const Words = await app.ActiveDocument.Words
}
返回一个文档限制编辑模式 Enum.WdRestrictEditMode。此属性为只读属性
表达式.ActiveDocument.RestrictEditMode
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取限制编辑模式
const mode = await app.ActiveDocument.RestrictEditMode
}
控制接受文档中指定审阅者的所有修订,详细配合可参考 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.Reviewers.Item(1)
// 控制接受文档中指定审阅者的所有修订
ActiveDocument.Visible = true
// 接受文档中指定审阅者的所有修订
await app.ActiveDocument.AcceptAllRevisionsShown()
}
文档的所有内置文档属性
表达式.ActiveDocument.BuiltinDocumentProperties()
表达式:文档类型应用对象
删除文档内的所有评论
表达式.ActiveDocument.DeleteAllComments()
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 删除文档内的所有评论
await app.ActiveDocument.DeleteAllComments()
}
删除文档中指定审阅者的所有评论,详细配合可参考 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.Reviewers.Item(1)
// 控制删除文档中指定审阅者的所有评论
ActiveDocument.Visible = true
// 删除文档中指定审阅者的所有评论
await app.ActiveDocument.DeleteAllCommentsShown()
}
导出当前文件为对应的 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
。
该 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)
}
//@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)
}
提供获取文本中 @ 人列表
表达式.ActiveDocument.GetAtList()
表达式:文档类型应用对象
返回对应的 @ 人列表数组,包含 uuid
字段
async function example() {
await instance.ready()
const app = instance.Application
// 提供获取文本中 @ 人列表
const atInfo = await app.ActiveDocument.GetAtList()
console.log(atInfo)
}
通过 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)
}
获取全文评论
表达式.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)
}
获取正文容器的尺寸信息
表达式.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)
}
获取全文范围
表达式.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)
}
获取所有缺失的字体列表
表达式.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)
}
获取在线协作用户的列表
表达式.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)
}
获取当前登录操作者信息
表达式.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)
}
获取当前页面版式
表达式.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)
}
安全文档中获取水印
表达式.ActiveDocument.GetWatermark()
表达式:文档类型应用对象
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 安全文档中获取水印
const watermarkInfo = await app.ActiveDocument.GetWatermark()
console.log(watermarkInfo)
}
安全文档中设置水印
表达式.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',
FillStyle: 'rgba(192, 192, 192, 0.6)',
Font: 'bold 20px Serif',
Rotate: (-45 * Math.PI) / 180,
Horizontal: 50,
Vertical: 100
})
}
是否有评论
表达式.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
}
根据传入数据及配置匹配文档中的内容部件并替换内容
表达式.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
}
})
}
开启限制编辑
表达式.ActiveDocument.Protect({ Password, Type })
表达式:文档类型应用对象
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Password | String | - | 否 | 设置的密码 |
Type | Number | 4 | 否 | 保护类型,传参可参考枚举WdRestrictEditMode |
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 开启限制编辑
await app.ActiveDocument.Protect('test')
// 停止限制编辑
await app.ActiveDocument.Unprotect('test')
}
控制拒绝文档中指定审阅者的所有修订,详细配合可参考 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.Reviewers.Item(1)
// 控制拒绝文档中指定审阅者的所有修订
ActiveDocument.Visible = true
// 拒绝文档中指定审阅者的所有修订
await app.ActiveDocument.RejectAllRevisionsShown()
}
根据传入数组全文匹配并替换文本
表达式.ActiveDocument.ReplaceText(Array.<Object>)
表达式:文档类型应用对象
传入一个数组,表明需要替换的文本列表。
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
+ list | list[] | 是 | 要替换的文本列表 | |
key | string | 是 | 被替换的文本 | |
value | string | 是 | 替换的文本 | |
+ options | 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: 'JSSDK'
}
])
console.log(isSuccess) // true
}
保存文件的改动
表达式.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)
}
滚动正文容器到指定位置
表达式.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 })
}
隐藏评论相关功能(当前仅移动端有效)
表达式.ActiveDocument.SetCommentEnabled({ Enable })
表达式:文档类型应用对象
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Enable | Boolean | 是 | 是否隐藏 |
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 设置为隐藏
await app.ActiveDocument.SetCommentEnabled({
Enable: true
})
}
需要开启配置
__CONFIG__.wps.enableContentControlACL
提示
__CONFIG__.wps.enableContentControlACL
配置方式:控制台进入应用管理页面-选择进入某个在线编辑应用后,切换到文档配置
-筛选文字配置
-文字配置类别扩展功能
-是否设置内容控件只读权限
表达式.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
// 开启限制编辑,建议调用一次,多次调用易出错,可配合Unprotect()使用
await app.ActiveDocument.Protect()
// 文档内容控件开启只读权限,Tag为test的控件设置为编辑权限,需要开启配置 __CONFIG__.wps.enableContentControlACL【设置内容控件只读权限】
await app.ActiveDocument.SetContentControlAuthority('read', [
{ tag: 'test', access: 'edit' }
])
}
将打开的文档临时设置为只读
请注意:
表达式.ActiveDocument.SetReadOnly({ Value })
表达式:文档类型应用对象
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Value | Boolean | 是 | 是否设置为只读 |
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 设置为只读
await app.ActiveDocument.SetReadOnly({
Value: true
})
}
JSSDK: v1.1.18+ 支持
设置正文滚动条样式
注:只针对 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
})
}
显示/不显示文件名栏
注 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)
}
分页/连页模式切换
表达式.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)
}
停止限制编辑
表达式.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')
}