Skip to main content

Document

Document

当前文字文档

属性

ActiveWindow

返回一个 Window 对象,该对象代表当前活动窗口

语法

Application.ActiveDocument.ActiveWindow

返回值

ActiveWindow

示例

function example() {
const ActiveWindow = Application.ActiveDocument.ActiveWindow;
}

Bookmarks

JSSDK: 1.2.2、zOffice2022.3 FP2 支持

返回一个 Bookmarks 集合,该集合代表文档中的所有书签。

语法

Application.ActiveDocument.Bookmarks

返回值

Word.Bookmarks

示例

// 获取文档中所有书签数目
function example() {
const bookmarks = Application.ActiveDocument.Bookmarks;
const count = await bookmarks.count;
}

PermMarks

JSSDK: 1.2.2、zOffice2022.3 FP2 支持

返回一个 PermMarks 集合,该集合代表文档中的所有可编辑区域。

语法

Application.ActiveDocument.PermMarks

返回值

Word.PermMarks

示例

// 获取文档中所有可编辑区域数目
function example() {
const permMarks = Application.ActiveDocument.PermMarks;
const count = await permMarks.count;
}

Comments

返回一个 Comments 集合,该集合代表文档中的所有批注。

语法

Application.ActiveDocument.Comments

返回值

Word.Comments

示例

// 获取文档中所有批注数目
function example() {
const comments = Application.ActiveDocument.Comments;
const count = await comments.count;
}

Paragraphs

返回一个 Paragraphs 集合,该集合代表文档中的所有段落。

语法

Application.ActiveDocument.Paragraphs

返回值

Word.Paragraphs

示例

// 获取文档中所有段落数目
function example() {
const paragraphs = Application.ActiveDocument.Paragraphs;
const count = await paragraphs.count;
}

Tables

返回一个 Tables 集合,该集合代表文档中的所有表格。

语法

Application.ActiveDocument.Tables

返回值

Word.Tables

示例

// 获取文档中所有表格数目
function example() {
const tables = Application.ActiveDocument.Tables;
const count = await tables.count;
}

Revisions

返回一个 Revisions 集合,该集合代表文档中的所有修订。

语法

Application.ActiveDocument.Revisions

返回值

Word.Revisions

示例

// 获取文档中所有修订数目
function example() {
const revisions = Application.ActiveDocument.Revisions;
const count = await revisions.count;
}

Shapes

返回一个 Shapes 集合,该集合代表文档中的所有形状。

语法

Application.ActiveDocument.Shapes

返回值

Word.Shapes

示例

// 获取文档中所有形状数目
function example() {
const shapes = Application.ActiveDocument.Shapes;
const count = await shapes.count;
}

InlineShapes

返回一个 InlineShapes 集合,该集合代表文档中的所有内嵌形状。

语法

Application.ActiveDocument.InlineShapes

返回值

Word.InlineShapes

示例

// 获取文档中所有内嵌形状数目
function example() {
const inlineShapes = Application.ActiveDocument.InlineShapes;
const count = await inlineShapes.count;
}

Sections

返回一个 Sections 集合,该集合代表文档中的所有节。

语法

Application.ActiveDocument.Sections

返回值

Word.Sections

示例

// 获取文档中所有内嵌形状数目
function example() {
const sections = Application.ActiveDocument.Sections;
const count = await sections.count;
}

OutlineEntries

JSSDK: 1.9.1、zOffice V8.0 FP1 支持

返回一个 OutlineEntries 集合,该集合代表文档中的所有大纲段落。

语法

Application.ActiveDocument.OutlineEntries

返回值

Word.OutlineEntries

示例

// 获取文档中所有大纲段落数目
function example() {
const OutlineEntries = Application.ActiveDocument.OutlineEntries;
const count = await OutlineEntries.count;
}

Content

JSSDK: 1.3.3、zOffice V6.0 FP3 支持

返回一个只读Range对象,该对象代表主文档文章。

语法

Application.ActiveDocument.Content

返回值

Range

示例

function example() {
const range = Application.ActiveDocument.Content;
}

ProtectionType

JSSDK: 1.7.2、zOffice V7.2 FP1 支持

返回文档的保护类型,可以是 Word.ProtectionType 常量之一

语法

Application.ActiveDocument.ProtectionType

返回值

Promise<number>

示例

async function example() {
const protectType = await Application.ActiveDocument.ProtectionType;
}

PermissionType

JSSDK: 1.9.1、zOffice V8.0 FP1 支持

当文档处于区域编辑保护状态时,文档的默认编辑权限,可以是 Word.DocPermission 常量之一,只读

语法

Application.ActiveDocument.PermissionType

返回值

Promise<Word.DocPermission>

示例

async function example() {
const docPermission = await Application.ActiveDocument.PermissionType;
}

方法

protect

JSSDK: 1.7.2、zOffice V7.2 FP1 支持

文档保护开启

语法

Application.ActiveDocument.protect(type, docPermission)

多个模式用 “ | ” 连接

参数

属性数据类型必填说明
typenumber传入保护类型,具体值参照Word.ProtectionType枚举值(只有修订保护类型可以和其他保护类型同时设置,其他保护类型只能单独设置)
docPermissionWord.DocPermission当开启区域编辑保护时,全文的默认权限,默认全文只读

返回值

Promise<boolean>

示例

async function example1() {
const type = Word.ProtectionType
const result = await Application.ActiveDocument.protect(type.EditArea | type.Revision); // 同时开启区域编辑和修订保护
console.log(result)
}
async function example2() {
const type = Word.ProtectionType
const result = await Application.ActiveDocument.protect(type.EditArea, Word.DocPermission.Editable); // 开启区域编辑保护,全文默认可编辑
console.log(result)
}

unprotect

JSSDK: 1.7.2、zOffice V7.2 FP1 支持

文档保护关闭开启

语法

Application.ActiveDocument.unprotect()

返回值

Promise<boolean>

示例

async function example() {
const result = await Application.ActiveDocument.unprotect();
console.log(result);
}

isDataProtectionOn

JSSDK: 1.0.3、zOffice2022.1 FP3 支持

内容保护是否开启

语法

Application.ActiveDocument.isDataProtectionOn()

返回值

Promise<boolean>

示例

async function example() {
const isOpen = await Application.ActiveDocument.isDataProtectionOn();
console.log(isOpen);
}

save

保存文档

语法

Application.ActiveDocument.save()

返回值

Promise<boolean>

示例

async function example() {
await Application.ActiveDocument.save();
}

saveAs

JSSDK: 1.2.1、zOffice2022.3 FP1 支持

另存为文件

语法

Application.ActiveDocument.saveAs(format, name, path)

参数

属性数据类型必须说明
formatstring另存为文件类型。目前仅支持pdf
namestring不带有后缀的文件名。name为空时文件名为当前文件名拼接时间(格式为yyyyMMddhhmmss),zOffice服务端发送preflight check请求时会回传

返回值

示例

// 只指定另存为格式
async function example() {
await Application.ActiveDocument.saveAs('pdf');
}

// 指定另存为格式和文件名
async function example2() {
await Application.ActiveDocument.saveAs('pdf', 'newFileName');
}

print

JSSDK: 1.2.2、zOffice2022.3 FP2 支持

打印文档

语法

Application.ActiveDocument.print()

返回值

Promise<boolean> 是否成功打开打印页面

示例

async function example() {
await Application.ActiveDocument.print();
}

getWordCount

JSSDK: 1.9.0、zOffice V7.4 支持

获取当前文档字数

语法

Application.ActiveDocument.getWordCount()

返回值

Promise<WordsCountJSON>

WordsCountJSON

{
total: number; // 文档总字数
}

示例

async function example() {
const words = await Application.ActiveDocument.getWordCount();
const wordsCount = words.total; // 文档字数
console.log(wordsCount)
}

getSelection

获取当前光标选择范围

语法

Application.ActiveDocument.getSelection()

Application:文档类型应用对象

返回值

Promise<Word.Range>

示例

async function example() {
const range = await Application.ActiveDocument.getSelection();
}

setSelection

选择指定范围内容

语法

Application.ActiveDocument.setSelection(range)

Application:文档类型应用对象

参数

属性数据类型必填说明
rangeWord.Range范围

返回值

Promise<boolean>

示例

async function example() {
const bookmark = await Application.ActiveDocument.Bookmarks.item(1);
const range = await bookmark.range;
const res = await Application.ActiveDocument.setSelection(range);
}

getPageCount

获取页面总数

语法

Application.ActiveDocument.getPageCount()

Application:文档类型应用对象

返回值

Promise<number>

示例

async function example() {
const pageCount = await Application.ActiveDocument.getPageCount();
}

getComments

JSSDK: 1.0.4、zOffice2022.1 FP4 支持

获取所有批注数据

语法

Application.ActiveDocument.getComments()

Application:文档类型应用对象

返回值

Promise<Comment[]>

Comment 数据结构

{
content: string,
id: string,
replies: CommentReply[], // 批注回复,如果没有回复,则为空数组
resolved: boolean,
time: number
users: {
name: string,
uid: string
}
}

CommentReply 数据结构

{
content: string,
id: string,
pid: string, // 回复的批注的 id
time: number,
users: {
name: string,
uid: string
}
}

示例

async function example() {
const comments = await Application.ActiveDocument.getComments();
}

getName

获取文档标题名称

语法

Application.ActiveDocument.getName()

Application:文档类型应用对象

返回值

Promise<string>

示例

async function example() {
const documentTitle = await Application.ActiveDocument.getName();
}

getParagraphs

获取当前文档的所有一级段落

语法

Application.ActiveDocument.getParagraphs(option)

Application:文档类型应用对象

参数

属性数据类型必填说明
optionanyoption.afterToc 为 true 表示只获取目录之后的段落

返回值

Promise<Word.Paragraph[]>

示例

async function example() {
const paras = await Application.ActiveDocument.getParagraphs();
}

enableTrackChange

打开跟踪更改,后续修改会生成修订记录

语法

Application.ActiveDocument.enableTrackChange()

Application:文档类型应用对象

返回值

示例

async function example() {
await Application.ActiveDocument.enableTrackChange();
}

disableTrackChange

关闭跟踪更改,关闭后后续修改不会再生成修订记录

语法

Application.ActiveDocument.disableTrackChange()

Application:文档类型应用对象

返回值

示例

async function example() {
await Application.ActiveDocument.disableTrackChange();
}

acceptAllRevisions

接受所有更改

语法

Application.ActiveDocument.acceptAllRevisions()

Application:文档类型应用对象

返回值

示例

async function example() {
await Application.ActiveDocument.acceptAllRevisions();
}

rejectAllRevisions

拒绝所有更改

语法

Application.ActiveDocument.rejectAllRevisions()

Application:文档类型应用对象

返回值

示例

async function example() {
await Application.ActiveDocument.rejectAllRevisions();
}

CleanDocument

清稿:清除所有文中的批注和接收全部修订记录

语法

Application.ActiveDocument.CleanDocument()

Application: 文档类型应用对象

返回值

示例

async function example() {
await Application.ActiveDocument.CleanDocument();
}

CleanComments

删除所有批注

语法

Application.ActiveDocument.CleanComments()

Application: 文档类型应用对象

返回值

示例

async function example() {
await Application.ActiveDocument.CleanComments();
}