Bookmark

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

Bookmarks

ActiveDocument.Bookmarks

获取文档中的所有书签。

重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks

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

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取所有书签
      const bookmarks = await app.ActiveDocument.Bookmarks;
    }

方法

ActiveDocument.Bookmarks.Add()

通过Add()方法,您可以添加书签。

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

  • 仅PC端支持此功能。

  • 语法

    表达式.ActiveDocument.Bookmarks.Add({ Name, Range })

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

  • 参数

    属性

    数据类型

    是否必填

    描述

    Name

    String

    书签名。命名规则如下:

    • 不能多于一个单词。

    • 不能含有空格、数字以及半角句号(.)等特殊符号。

    Range

    Object

    书签标记的文本区域。可将书签设置到一个折叠的区域(插入点)。

    Range说明

    属性

    数据类型

    是否必填

    描述

    Start

    Number

    设置书签的起点。

    End

    Number

    设置书签的终点。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      //获取所有书签
      const bookmarks = await app.ActiveDocument.Bookmarks;
    
      //添加书签
      await bookmarks.Add({
        Name: 'Aliyun',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    }

ActiveDocument.Bookmarks.GetBookmarkText()

通过GetBookmarkText()方法,您可以获取书签内容。

重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.GetBookmarkText(Name)

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

  • 参数

    属性

    数据类型

    是否必填

    描述

    Name

    String

    书签名。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      //获取所有书签
      const bookmarks = await app.ActiveDocument.Bookmarks;
    
      //添加书签
      await bookmarks.Add({
        Name: 'Aliyun',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      //获取书签内容
      const bookmarkText = await bookmarks.GetBookmarkText('Aliyun');
      console.log(bookmarkText);
    }

ActiveDocument.Bookmarks.Json()

通过Json()方法,您可以获取所有书签信息。

重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.Json()

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

  • 参数

    属性

    数据类型

    描述

    name

    String

    书签名。

    begin

    Number

    书签开始位置。

    end

    Number

    书签结束位置。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      //获取所有书签
      const bookmarks = await app.ActiveDocument.Bookmarks;
    
    
      //添加书签
      await app.ActiveDocument.Bookmarks.Add({
        Name: 'Aliyun',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      //获取所有书签信息
      const bookmarks = await app.ActiveDocument.Bookmarks.Json();
      console.log(bookmarks);
    }

ActiveDocument.Bookmarks.ReplaceBookmark()

通过ReplaceBookmark()方法,您可以替换书签内容。

重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.ReplaceBookmark(Data)

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

  • 参数

    属性

    数据类型

    是否必填

    描述

    Data

    Array.<Object>

    替换内容结构体。

  • Data说明

    属性

    数据类型

    是否必填

    描述

    name

    String

    替换书签的名称。

    type

    String

    替换书签的类型。书签类型为TEXT。

    value

    String

    替换书签的新内容。

  • 返回值

    返回Booleantrue表示替换成功,false表示替换失败。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      //获取所有书签
      const bookmarks = await app.ActiveDocument.Bookmarks;
    
      //添加书签
      await bookmarks.Add({
        Name: 'Aliyun',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      //替换书签内容
      const isReplaceSuccess = await bookmarks.ReplaceBookmark([
        {
          name: 'Aliyun',
          type: 'text',
          value: '替换书签内容',
        },
      ]);
      console.log(isReplaceSuccess);
    }

    ActiveDocument.Bookmarks.Exists(Name)

    通过Exists(Name)方法,您可以验证书签是否存在。

    重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.Exists(Name)

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

  • 参数

    属性

    数据类型

    是否必填

    描述

    Name

    String

    书签名

  • 返回值

    返回Boolean,为true表示书签存在,否则不存在。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 添加书签
      await app.ActiveDocument.Bookmarks.Add({
        Name: 'WebOffice',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      // 判断书签是否存在
      const isExist = await app.ActiveDocument.Bookmarks.Exists('WebOffice');
      console.log(isExist); // true
    }

    属性

    ActiveDocument.Bookmarks.Count

    通过Count属性,您可以获取文档内容控件的数量。

    重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.Count

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

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 添加书签
      await app.ActiveDocument.Bookmarks.Add({
        Name: 'WebOffice',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      // 获取书签数量
      const count = await app.ActiveDocument.Bookmarks.Count;
      console.log(count);
    }

    ActiveDocument.Bookmarks.DefaultSorting

    通过DefaultSorting属性,您可以设置书签排序。

    重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.DefaultSorting = WdBookmarkSortBy

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

  • 设置书签排序时,WdBookmarkSortBy详细可参考:Enum.WdBookmarkSortBy

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
    
      // 书签排序
      const sort = await app.ActiveDocument.Bookmarks.DefaultSorting;
    
      // 设置书签排序
      app.ActiveDocument.Bookmarks.DefaultSorting = 0;
    }
    //设置书签排序时,WdBookmarkSortBy 详细可参考:Enum.WdBookmarkSortBy

Bookmark

ActiveDocument.Bookmarks.Item()

获取单个书签对象。

重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.Item(Name)

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

  • 参数

    属性

    数据类型

    是否必填

    描述

    Name

    String

    书签名。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取所有书签
      const bookmarks = await app.ActiveDocument.Bookmarks;
    
      //添加书签
      await bookmarks.Add({
        Name: 'Aliyun',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      //获取单个书签对象
      await app.ActiveDocument.Bookmarks.Item('Aliyun');
    }

方法

ActiveDocument.Bookmarks.Item(Name).Delete()

通过Delete()方法,您可以删除单个书签。

重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.Item(Name).Delete()

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

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取所有书签
      const bookmarks = await app.ActiveDocument.Bookmarks;
    
      //添加书签
      await bookmarks.Add({
        Name: 'Aliyun',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      //获取单个书签对象
      await app.ActiveDocument.Bookmarks.Item('Aliyun');
    
      //删除单个书签
      await app.ActiveDocument.Bookmarks.Item('Aliyun').Delete();
    }

    ActiveDocument.Bookmarks.Item(Name1).Copy(Name2)

    通过Copy()方法,您可以复制单个书签。

    重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.Item(Name1).Copy(Name2)

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

  • 参数

    属性

    数据类型

    必填

    说明

    Name

    String

    书签名

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 添加书签
      await app.ActiveDocument.Bookmarks.Add({
        Name: 'WebOffice',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      // 复制书签
      await app.ActiveDocument.Bookmarks.Item('WebOffice').Copy('NewBookmark');
    }

    ActiveDocument.Bookmarks.Item(Name).Select()

  • 通过Select()方法,您可以选中书签。

    重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.Item(Name).Select()

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

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 添加书签
      await app.ActiveDocument.Bookmarks.Add({
        Name: 'WebOffice',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      // 选中书签内容
      await app.ActiveDocument.Bookmarks.Item('WebOffice').Select();
    }

属性

ActiveDocument.Bookmarks.Item(Name).Name

通过Name属性,您可以获取单个书签名称。

重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.Item(Name).Name

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

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取所有书签
      const bookmarks = await app.ActiveDocument.Bookmarks;
    
      //添加书签
      await bookmarks.Add({
        Name: 'Aliyun',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      //获取单个书签对象
      await app.ActiveDocument.Bookmarks.Item('Aliyun');
    
      //获取单个书签名称
      await app.ActiveDocument.Bookmarks.Item('Aliyun').Name;
    }

    ActiveDocument.Bookmarks.Item(Name).Empty

    通过Empty属性,您可以验证书签内容是否为空。

    重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.Item(Name).Empty

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

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 添加书签
      await app.ActiveDocument.Bookmarks.Add({
        Name: 'WebOffice',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      // 判断书签内容是否为空
      const isEmpty = await app.ActiveDocument.Bookmarks.Item('WebOffice').Empty;
      console.log(isEmpty); // false
    }

    ActiveDocument.Bookmarks.Item(Name).Start

  • 通过Start属性,您可以获取书签内容起始位置。

    重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.Item(Name).Start

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

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 添加书签
      await app.ActiveDocument.Bookmarks.Add({
        Name: 'WebOffice',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      // 书签内容起始位置
      const start = await app.ActiveDocument.Bookmarks.Item('WebOffice').Start;
      console.log(start); // 1
    }

    ActiveDocument.Bookmarks.Item(Name).End

  • 通过End属性,您可以获取书签内容结束位置。

    重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.Item(Name).End

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

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 添加书签
      await app.ActiveDocument.Bookmarks.Add({
        Name: 'WebOffice',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      // 书签内容结束位置
      const end = await app.ActiveDocument.Bookmarks.Item('WebOffice').End;
      console.log(end); // 10
    }

    ActiveDocument.Bookmarks.Item(Name).Range

  • 通过Range属性,您可以获取书签内容区域。

    重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.Item(Name).Range

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

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 添加书签
      await app.ActiveDocument.Bookmarks.Add({
        Name: 'WebOffice',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      // 获取书签内容区域
      await app.ActiveDocument.Bookmarks.Item('WebOffice').Range;
    }

    ActiveDocument.Bookmarks.Item(Name).StoryType

  • 通过StoryType属性,您可以获取书签内容的类型。

    重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.Item(Name).StoryType

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

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 添加书签
      await app.ActiveDocument.Bookmarks.Add({
        Name: 'WebOffice',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      // 获取书签内容的类型
      await app.ActiveDocument.Bookmarks.Item('WebOffice').StoryType;
    }

    ActiveDocument.Bookmarks.Item(Name).Column

  • 通过Column属性,您可以判断书签内容是否是表格的一列。

    重要

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

  • 语法

    表达式.ActiveDocument.Bookmarks.Item(Name).Column

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

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 添加书签
      await app.ActiveDocument.Bookmarks.Add({
        Name: 'WebOffice',
        Range: {
          Start: 1,
          End: 10,
        },
      });
    
      // 判断书签内容是否是表格的一列
      const column = await app.ActiveDocument.Bookmarks.Item('WebOffice').Column;
      console.log(column); // false
    }