Skip to content

文字组件公文域操作相关 API

公文域对象

ActiveDocument.DocumentFields

获取文档中所有的公文域

语法

表达式.ActiveDocument.DocumentFields

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

示例

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

  const app = instance.Application

  // 公文域对象
  const documentFields = await app.ActiveDocument.DocumentFields
}

插入公文域

ActiveDocument.DocumentFields.Add()

插入公文域

语法

表达式.ActiveDocument.DocumentFields.Add()

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

参数

属性类型默认值必填说明
Name
string
公文域名称
+
Range
Range {}
公文域范围
Hidden
boolean
是否隐藏,默认 false
PrintOut
boolean
是否可打印,默认 true
ReadOnly
boolean
是否只读,默认 false

返回值

属性类型说明
params1
string
返回值 1 说明
params2
number
返回值 2 说明

示例

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

  const app = instance.Application

  // 插入公文域
  await app.ActiveDocument.DocumentFields.Add({
    Name: '1',
    Range: { Start: 12, End: 20 },
    Hidden: false, // 是否隐藏,默认 false
    PrintOut: true, // 是否可打印,默认 true
    ReadOnly: true // 是否只读,默认 false
  })
}

批量插入公文域

ActiveDocument.DocumentFields.AddDocumentFields()

批量插入公文域

语法

表达式.ActiveDocument.DocumentFields.AddDocumentFields()

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

参数

属性类型默认值必填说明
Name
string
公文域名称
+
Range
Range {}
公文域范围
Hidden
boolean
是否隐藏,默认 false
PrintOut
boolean
是否可打印,默认 true
ReadOnly
boolean
是否只读,默认 false
Value
string
域对应的值

示例

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

  const app = instance.Application

  // 批量插入公文域
  await app.ActiveDocument.DocumentFields.AddDocumentFields([
    {
      Name: '1', // 域名称
      Range: { Start: 0, End: 10 }, // 域位置
      Value: 'WebOffice1' // 域值
    },
    {
      Name: '2', // 域名称
      Range: { Start: 12, End: 18 }, // 域位置
      Value: 'WebOffice2' // 域值
    }
  ])
}

获取公文域个数

ActiveDocument.DocumentFields.Count

获取公文域个数

语法

表达式.ActiveDocument.DocumentFields.Count

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

返回值

返回 Number 表示公文域的个数

示例

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

  const app = instance.Application

  // 公文域的个数
  const count = await app.ActiveDocument.DocumentFields.Count
  console.log(count)
}

获取所有公文域的名字

ActiveDocument.DocumentFields.GetAllNames()

获取所有公文域的名字

语法

表达式.ActiveDocument.DocumentFields.GetAllNames()

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

返回值

返回 Array 表示所有公文域的名字

示例

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

  const app = instance.Application

  // 批量插入公文域
  await app.ActiveDocument.DocumentFields.AddDocumentFields([
    {
      Name: '1', // 域名称
      Range: { Start: 0, End: 10 }, // 域位置
      Value: 'WebOffice1' // 域值
    },
    {
      Name: '2', // 域名称
      Range: { Start: 12, End: 18 }, // 域位置
      Value: 'WebOffice2' // 域值
    }
  ])

  // 获取所有公文域的名字
  const names = await app.ActiveDocument.DocumentFields.GetAllNames()
  console.log(names) // ['1', '2']
}

判断是否有某公文域

ActiveDocument.DocumentFields.Exists()

判断是否有某公文域

语法

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

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

参数

属性类型默认值必填说明
Name
string
公文域名称

返回值

返回 Boolean 表示是否有某公文域

示例

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

  const app = instance.Application

  // 批量插入公文域
  await app.ActiveDocument.DocumentFields.AddDocumentFields([
    {
      Name: '1', // 域名称
      Range: { Start: 0, End: 10 }, // 域位置
      Value: 'WebOffice1' // 域值
    },
    {
      Name: '2', // 域名称
      Range: { Start: 12, End: 18 }, // 域位置
      Value: 'WebOffice2' // 域值
    }
  ])

  // 判断是否有某公文域
  const hasOne = await app.ActiveDocument.DocumentFields.Exists('1')
  console.log(hasOne) // true
}

获取某一个公文域

ActiveDocument.DocumentFields.Item()

公文域集合的单个公文域

语法

表达式.ActiveDocument.DocumentFields.Item({ Index, Name })

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

参数

属性类型默认值必填说明
Index
number
公文域索引
Name
string
公文域名称

返回值

返回 DocumentField 表示单个的公文域

示例

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

  const app = instance.Application

  // 插入公文域
  await app.ActiveDocument.DocumentFields.Add({
    Name: '1',
    Range: { Start: 12, End: 20 },
    Hidden: false, // 是否隐藏,默认 false
    PrintOut: true, // 是否可打印,默认 true
    ReadOnly: true // 是否只读,默认 false
  })

  // 公文域集合的单个公文域
  const documentField = await app.ActiveDocument.DocumentFields.Item({
    Name: '1'
  })
  console.log(documentField)
}

删除公文域

ActiveDocument.DocumentFields.Item({ Index, Name }).Delete()

删除公文域

语法

表达式.ActiveDocument.DocumentFields.Item({ Index, Name }).Delete()

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

参数

属性类型默认值必填说明
Index
number
公文域索引
Name
string
公文域名称

示例

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

  const app = instance.Application

  // 插入公文域
  await app.ActiveDocument.DocumentFields.Add({
    Name: '1',
    Range: { Start: 12, End: 20 },
    Hidden: false, // 是否隐藏,默认 false
    PrintOut: true, // 是否可打印,默认 true
    ReadOnly: true // 是否只读,默认 false
  })

  // 公文域集合的单个公文域
  const documentField = await app.ActiveDocument.DocumentFields.Item({
    Name: '1'
  })

  // 删除公文域
  await documentField.Delete()
}

跳转到公文域的开始位置

ActiveDocument.DocumentFields.Item({ Index, Name }).GotoBegin()

跳转到公文域的开始位置

语法

表达式.ActiveDocument.DocumentFields.Item({ Index, Name }).GotoBegin()

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

参数

属性类型默认值必填说明
Index
number
公文域索引
Name
string
公文域名称

示例

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

  const app = instance.Application

  // 插入公文域
  await app.ActiveDocument.DocumentFields.Add({
    Name: '1',
    Range: { Start: 12, End: 20 },
    Hidden: false, // 是否隐藏,默认 false
    PrintOut: true, // 是否可打印,默认 true
    ReadOnly: true // 是否只读,默认 false
  })

  // 公文域集合的单个公文域
  const documentField = await app.ActiveDocument.DocumentFields.Item({
    Name: '1'
  })

  // 跳转到公文域的开始位置
  await documentField.GotoBegin()
}

跳转到公文域的结束位置

ActiveDocument.DocumentFields.Item({ Index, Name }).GotoEnd()

跳转到公文域的结束位置

语法

表达式.ActiveDocument.DocumentFields.Item({ Index, Name }).GotoEnd()

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

参数

属性类型默认值必填说明
Index
number
公文域索引
Name
string
公文域名称

示例

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

  const app = instance.Application

  // 插入公文域
  await app.ActiveDocument.DocumentFields.Add({
    Name: '1',
    Range: { Start: 12, End: 20 },
    Hidden: false, // 是否隐藏,默认 false
    PrintOut: true, // 是否可打印,默认 true
    ReadOnly: true // 是否只读,默认 false
  })

  // 公文域集合的单个公文域
  const documentField = await app.ActiveDocument.DocumentFields.Item({
    Name: '1'
  })

  // 跳转到公文域的结束位置
  await documentField.GotoEnd()
}

公文域是否隐藏

ActiveDocument.DocumentFields.Item({ Index, Name }).Hidden

公文域是否隐藏

语法

表达式.ActiveDocument.DocumentFields.Item({ Index, Name }).Hidden

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

参数

属性类型默认值必填说明
Index
number
公文域索引
Name
string
公文域名称

返回值

返回 Boolean 表示该公文域的显示隐藏

示例

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

  const app = instance.Application

  // 插入公文域
  await app.ActiveDocument.DocumentFields.Add({
    Name: '1',
    Range: { Start: 12, End: 20 },
    Hidden: true, // 是否隐藏,默认 false
    PrintOut: true, // 是否可打印,默认 true
    ReadOnly: true // 是否只读,默认 false
  })

  // 公文域集合的单个公文域
  const documentField = await app.ActiveDocument.DocumentFields.Item({
    Name: '1'
  })

  // 公文域是否隐藏
  const isHidden = await documentField.Hidden
  console.log(isHidden)
}

公文域是否可打印

ActiveDocument.DocumentFields.Item({ Index, Name }).PrintOut

公文域是否可打印

语法

表达式.ActiveDocument.DocumentFields.Item({ Index, Name }).PrintOut

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

参数

属性类型默认值必填说明
Index
number
公文域索引
Name
string
公文域名称

返回值

返回 Boolean 表示该公文域的是否可打印

示例

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

  const app = instance.Application

  // 插入公文域
  await app.ActiveDocument.DocumentFields.Add({
    Name: '1',
    Range: { Start: 12, End: 20 },
    Hidden: false, // 是否隐藏,默认 false
    PrintOut: true, // 是否可打印,默认 true
    ReadOnly: true // 是否只读,默认 false
  })

  // 公文域集合的单个公文域
  const documentField = await app.ActiveDocument.DocumentFields.Item({
    Name: '1'
  })

  // 公文域是否可打印
  const isPrintOut = await documentField.PrintOut
  console.log(isPrintOut)
}

公文域是否只读

ActiveDocument.DocumentFields.Item({ Index, Name }).ReadOnly

公文域是否只读

语法

表达式.ActiveDocument.DocumentFields.Item({ Index, Name }).ReadOnly

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

参数

属性类型默认值必填说明
Index
number
公文域索引
Name
string
公文域名称

返回值

返回 Boolean 表示该公文域是否只读

示例

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

  const app = instance.Application

  // 插入公文域
  await app.ActiveDocument.DocumentFields.Add({
    Name: '1',
    Range: { Start: 12, End: 20 },
    Hidden: true, // 是否隐藏,默认 false
    PrintOut: true, // 是否可打印,默认 true
    ReadOnly: true // 是否只读,默认 false
  })

  // 公文域集合的单个公文域
  const documentField = await app.ActiveDocument.DocumentFields.Item({
    Name: '1'
  })

  // 公文域是否只读
  const isReadOnly = await documentField.ReadOnly
  console.log(isReadOnly)
}

公文域范围

ActiveDocument.DocumentFields.Item({ Index, Name }).Range

公文域范围

语法

表达式.ActiveDocument.DocumentFields.Item({ Index, Name }).Range

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

参数

属性类型默认值必填说明
Index
number
公文域索引
Name
string
公文域范围

返回值

返回 Range 对象表示该公文域的范围

示例

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

  const app = instance.Application

  // 插入公文域
  await app.ActiveDocument.DocumentFields.Add({
    Name: '1',
    Range: { Start: 12, End: 20 },
    Hidden: false, // 是否隐藏,默认 false
    PrintOut: true, // 是否可打印,默认 true
    ReadOnly: true // 是否只读,默认 false
  })

  // 公文域集合的单个公文域
  const documentField = await app.ActiveDocument.DocumentFields.Item({
    Name: '1'
  })

  // 公文域范围
  const range = await documentField.Range
  console.log(range)
}

公文域名称

ActiveDocument.DocumentFields.Item({ Index, Name }).Name

公文域名称

语法

表达式.ActiveDocument.DocumentFields.Item({ Index, Name }).Name

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

参数

属性类型默认值必填说明
Index
number
公文域索引
Name
string
公文域名称

返回值

返回 String 表示该公文域的名称

示例

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

  const app = instance.Application

  // 插入公文域
  await app.ActiveDocument.DocumentFields.Add({
    Name: '1',
    Range: { Start: 12, End: 20 },
    Hidden: true, // 是否隐藏,默认 false
    PrintOut: true, // 是否可打印,默认 true
    ReadOnly: true // 是否只读,默认 false
  })

  // 公文域集合的单个公文域
  const documentField = await app.ActiveDocument.DocumentFields.Item({
    Name: '1'
  })
  console.log(documentField)

  // 公文域名称
  const name = await documentField.Name
  console.log(name)
}

公文域的值

ActiveDocument.DocumentFields.Item({ Index, Name }).Value

公文域的值

语法

表达式.ActiveDocument.DocumentFields.Item({ Index, Name }).Value

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

返回值

返回 String 表示对应公文域的值

示例

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

  const app = instance.Application

  // 插入公文域
  await app.ActiveDocument.DocumentFields.Add({
    Name: '1',
    Range: { Start: 12, End: 20 },
    Hidden: false, // 是否隐藏,默认 false
    PrintOut: true, // 是否可打印,默认 true
    ReadOnly: false // 是否只读,默认 false
  })

  // 公文域集合的单个公文域
  const documentField = await app.ActiveDocument.DocumentFields.Item({
    Name: '1'
  })

  // 公文域的值
  const value = await documentField.Value
  console.log(value)

  // 设置公文域的值
  documentField.Value = 'WebOffice'
}

公文域样式

ActiveDocument.DocumentFields.Item({ Index, Name }).Style

公文域样式

语法

表达式.ActiveDocument.DocumentFields.Item({ Index, Name }).Style

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

参数

属性类型默认值必填说明
Index
number
公文域索引
Name
string
公文域样式

返回值

返回 Style 对象表示该公文域的样式

示例

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

  const app = instance.Application

  // 插入公文域
  await app.ActiveDocument.DocumentFields.Add({
    Name: '1',
    Range: { Start: 12, End: 20 },
    Hidden: false, // 是否隐藏,默认 false
    PrintOut: true, // 是否可打印,默认 true
    ReadOnly: true // 是否只读,默认 false
  })

  // 公文域集合的单个公文域
  const documentField = await app.ActiveDocument.DocumentFields.Item({
    Name: '1'
  })

  // 公文域样式
  const style = await documentField.Style
  console.log(style)
}

应用公文域样式

ActiveDocument.DocumentFields.Item({ Index, Name }).Style.ApplyTo()

将 A 公文域样式应用到 B 公文域样式

语法

表达式.ActiveDocument.DocumentFields.Item({ Index, Name }).Style.ApplyTo(Name)

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

参数

属性类型默认值必填说明
Name
string
公文域名称

返回值

返回 Array 表示所有公文域的名字

示例

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

  const app = instance.Application

  // 批量插入公文域
  await app.ActiveDocument.DocumentFields.AddDocumentFields([
    {
      Name: '1', // 域名称
      Range: { Start: 0, End: 10 }, // 域位置
      Value: 'WebOffice1' // 域值
    },
    {
      Name: '2', // 域名称
      Range: { Start: 12, End: 18 }, // 域位置
      Value: 'WebOffice2' // 域值
    }
  ])

  // 公文域集合的单个公文域
  const documentField = await app.ActiveDocument.DocumentFields.Item({
    Name: '1'
  })

  // 应用公文域样式
  const style = await documentField.Style.ApplyTo('2')
  console.log(style)
}