Skip to content

书签操作相关 API

书签对象

ActiveDocument.Bookmarks

书签(Bookmarks)对象

语法

表达式.ActiveDocument.Bookmarks

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

示例

//@file=base.docx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 书签对象
  const bookmarks = await app.ActiveDocument.Bookmarks
}

添加书签

ActiveDocument.Bookmarks.Add()

添加书签

注意

该方法暂不支持移动端

语法

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

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

参数

属性类型默认值必填说明
Name
string
书签名。书签名不能多于一个单词。
+
Range
range {}
书签标记的文本区域。可将书签设置到一个折叠的区域(插入点)。

注意

Name 不能含有空格、数字以及. 等特殊符号

示例

//@file=base.docx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 书签对象
  const bookmarks = await app.ActiveDocument.Bookmarks

  // 添加书签
  await bookmarks.Add({
    Name: 'WebOffice',
    Range: {
      Start: 1,
      End: 10
    }
  })
}

获取书签内容

ActiveDocument.Bookmarks.GetBookmarkText(Name)

获取书签内容

语法

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

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

参数

属性类型默认值必填说明
Name
string
书签名

返回值

返回对应的书签内容

示例

//@file=base.docx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 书签对象
  const bookmarks = await app.ActiveDocument.Bookmarks

  // 添加书签
  await bookmarks.Add({
    Name: 'WebOffice',
    Range: {
      Start: 1,
      End: 10
    }
  })

  // 获取书签内容
  const bookmarkText = await bookmarks.GetBookmarkText('WebOffice')
  console.log(bookmarkText)
}

替换书签内容

ActiveDocument.Bookmarks.ReplaceBookmark(Data)

替换书签内容

语法

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

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

参数

属性类型默认值必填说明
+
Data
Data []
替换内容结构体

返回值

返回 Boolean,为 true 表示替换成功,否则失败。

示例

// @file=base.docx
// 获取所有书签
async function example() {
  await instance.ready()

  const app = instance.Application

  // 书签对象
  const bookmarks = await app.ActiveDocument.Bookmarks

  // 添加书签
  await bookmarks.Add({
    Name: 'WebOffice',
    Range: {
      Start: 1,
      End: 10
    }
  })

  // 替换书签内容
  const isReplaceSuccess = await bookmarks.ReplaceBookmark([
    {
      name: 'WebOffice',
      type: 'text',
      value: '替换书签内容'
    }
  ])
  console.log(isReplaceSuccess) // true
}

获取所有书签

ActiveDocument.Bookmarks.Json()

获取所有书签

语法

表达式.ActiveDocument.Bookmarks.Json()

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

返回值

属性类型说明
name
string
书签名
begin
number
书签开始位置
end
number
书签结束位置

示例

//@file=base.docx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 添加书签
  await app.ActiveDocument.Bookmarks.Add({
    Name: 'WebOffice',
    Range: {
      Start: 1,
      End: 10
    }
  })

  // 获取所有书签
  const bookmarks = await app.ActiveDocument.Bookmarks.Json()
  console.log(bookmarks)
}

单个书签对象

ActiveDocument.Bookmarks.Item(Name)

书签集合的单个书签

语法

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

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

参数

属性类型默认值必填说明
Name
string
书签名

示例

//@file=base.docx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 书签对象
  const bookmarks = await app.ActiveDocument.Bookmarks

  // 添加书签
  await bookmarks.Add({
    Name: 'WebOffice',
    Range: {
      Start: 1,
      End: 10
    }
  })

  // 获取单个书签对象
  await app.ActiveDocument.Bookmarks.Item('WebOffice')
}

删除书签

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

删除书签

语法

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

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

示例

//@file=base.docx
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').Delete()
}

获取书签名称

ActiveDocument.Bookmarks.Item(Name).Name

获取书签名称

语法

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

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

示例

//@file=base.docx
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').Name
}