Skip to content

概述

WebOffice SDK 除了提供基础的初始化配置以及一些常用的实例属性和方法之外,还提供了丰富的 API 对各类文档进行操作,您可以直接通过实例上的 Application 属性获取到该文档应用的 API 对象,然后通过该对象对文档进行内容的更新、格式的设置和窗体的管理等一系列操作。API 风格与 VBA 一致。

JSSDK 的 API 接口按不同的文档类型进行了划分:

  • 文字(Word):doc、docx 等后缀文件
  • 表格(Excel):xls、xlsx 等后缀文件
  • 演示(PPT):ppt、pptx 等后缀文件

当然还有特殊目录:

  • 公共:在文字(Word)、表格(Excel)、演示(PPT)等文档都可以使用的 API

前提条件

在使用 API 之前,确保您已完成如下步骤:

  • 已正确安装 WebOffice 并进行授权,在 portal 系统可以新建文档并开档。
  • 已按照要求实现回调服务的相关接口。

调用流程

在下面的例子中,我们将以获取文字文档基本信息为例来介绍一下 API 的调用流程。

IMPORTANT

在调用 API 之前,需要先等待 ready() 方法执行完毕。

js
window.onload = async function () {
  // 初始化文档
  const jssdk = WebOfficeSDK.init({
    url: "http://your-document-edit-url",
    container: document.querySelector("#outer"),
    auth: true,
  });

  // 设置 token
  await jssdk.setToken({
    token: "yourToken",
    timeout: 10 * 60 * 1000,
  });

  // 等待加载完毕
  await jssdk.ready();

  // 调用API
  console.log(jssdk.Application.ActiveDocument.FileInfo);
};

调用规则

索引序号

和 VBA 的规则一样,WebOffice 在线预览编辑服务也给非编程人员的使用提供方便。

所以在涉及索引调用的时候,尽可能从 1 开始(而不是从编程人员的 0 开始)。

以 Word(文字)中的修订为例,假如我们要接受文档中的第 1 个修订:

js
async function example() {
  // 获取第 1 个修订
  const revisionOne = jssdk.Application.ActiveDocument.Revisions.Item(1);

  // 接受第 1 个修订
  await revisionOne.Accept();
}