TablesOfContents

本文介绍与文字文档TablesOfContents相关的API。

TablesOfContents

ActiveDocument.TablesOfContents

获取文档中的所有目录。

重要
  • JS-SDK V1.1.12及以上版本支持此功能。

  • 仅PC端支持此功能。

  • 语法

    表达式.ActiveDocument.TablesOfContents

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      //获取文档中的所有目录
      const tablesOfContents = await app.ActiveDocument.TablesOfContents;
    }

方法

ActiveDocument.TablesOfContents.Add()

通过Add()方法,您可以插入目录。

重要
  • JS-SDK V1.1.12及以上版本支持此功能。

  • 仅PC端支持此功能。

  • 语法

    表达式.ActiveDocument.TablesOfContents.Add({ Range })

    表达式:文档类型应用对象。

  • 参数

    属性

    数据类型

    是否必填

    描述

    Range

    Object

    目录插入的区域。设置方法如下:

    • Start:设置目录的起点,数据类型为Number。

    • End:设置目录的终点,数据类型为Number。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      //获取区域对象
      const range = await app.ActiveDocument.Range(0, 0);
    
      //插入目录
      await app.ActiveDocument.TablesOfContents.Add(range);
    }

属性

ActiveDocument.TablesOfContents.Count

通过Count属性,您可以获取文档中目录的总数量。

重要
  • JS-SDK V1.1.12及以上版本支持此功能。

  • 仅PC端支持此功能。

  • 语法

    表达式.ActiveDocument.TablesOfContents.Count

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      //获取区域对象
      const range = await app.ActiveDocument.Range(0, 0);
    
      //插入目录
      await app.ActiveDocument.TablesOfContents.Add(range);
    
      //获取文档中目录的总数量
      await app.ActiveDocument.TablesOfContents.Count;
    }

TableOfContents

ActiveDocument.TablesOfContents.Item()

获取文档中的单个目录对象。

重要
  • TableOfContentsTablesOfContents是两个不同的对象,前者代表单个目录,后者代表目录集合(一个文档中可以插入多个目录)。

  • JS-SDK V1.1.12及以上版本支持此功能。

  • 仅PC端支持此功能。

  • 语法

    表达式.ActiveDocument.TablesOfContents.Item(Index)

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    Index

    Number

    目录索引。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      //获取区域对象
      const range = await app.ActiveDocument.Range(0, 0);
    
      //插入目录
      await app.ActiveDocument.TablesOfContents.Add(range);
    
      //获取单个目录对象
      await app.ActiveDocument.TablesOfContents.Item(1);
    }

方法

ActiveDocument.TablesOfContents.Item(Index).Update()

通过Update()方法,您可以更新整个目录对象。

重要
  • JS-SDK V1.1.12及以上版本支持此功能。

  • 仅PC端支持此功能。

  • 语法

    表达式.ActiveDocument.TablesOfContents.Item(Index).Update()

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      //获取区域对象
      const range = await app.ActiveDocument.Range(0, 0);
    
      //插入目录
      await app.ActiveDocument.TablesOfContents.Add(range);
    
      //更新整个目录
      await app.ActiveDocument.TablesOfContents.Item(1).Update();
    }

ActiveDocument.TablesOfContents.Item(Index).UpdatePageNumbers()

通过UpdatePageNumbers()方法,您可以仅更新目录页码。

重要
  • JS-SDK V1.1.12及以上版本支持此功能。

  • 仅PC端支持此功能。

  • 语法

    表达式.ActiveDocument.TablesOfContents.Item(Index).UpdatePageNumbers()

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      //获取区域对象
      const range = await app.ActiveDocument.Range(0, 0);
    
      //插入目录
      await app.ActiveDocument.TablesOfContents.Add(range);
    
      //仅更新目录页码
      await app.ActiveDocument.TablesOfContents.Item(1).UpdatePageNumbers();
    }

ActiveDocument.TablesOfContents.Item(Index).SetStyles()

通过SetStyles()方法,您可以设置目录样式。

重要
  • JS-SDK V1.1.12及以上版本支持此功能。

  • 仅PC端支持此功能。

  • 语法

    表达式.ActiveDocument.TablesOfContents.Item(Index).SetStyles(LowerHeadingLevel, IncludePageNumbers, TabLeader)

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    LowerHeadingLevel

    Number

    显示级别,取值范围为1~9。

    IncludePageNumbers

    Boolean

    是否显示页码。取值范围如下:

    • true(默认):是。

    • false:否。

    TabLeader

    Number

    制表符前导符类型。更多信息,请参见WdTabLeader

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      //获取区域对象
      const range = await app.ActiveDocument.Range(0, 0);
    
      //插入目录
      await app.ActiveDocument.TablesOfContents.Add(range);
    
      //设置目录样式
      const tabLeader = app.Enum.WdTabLeader.wdTabLeaderDashes
      await app.ActiveDocument.TablesOfContents.Item(1).SetStyles(9, true, tabLeader)
    }

ActiveDocument.TablesOfContents.Item(Index).Delete()

通过Delete()方法,您可以删除目录。

重要
  • JS-SDK V1.1.12及以上版本支持此功能。

  • 仅PC端支持此功能。

  • 语法

    表达式.ActiveDocument.TablesOfContents.Item(Index).Delete()

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      //获取区域对象
      const range = await app.ActiveDocument.Range(0, 0);
    
      //插入目录
      await app.ActiveDocument.TablesOfContents.Add(range);
    
      //删除目录
      await app.ActiveDocument.TablesOfContents.Item(1).Delete();
    }