本文介绍使用文字文档时如何获取指定公文域名称、批量插入公文域、应用公文域样式等。
获取公文域对象
获取文档中所有的公文域。
语法
表达式.ActiveDocument.DocumentFields
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //获取公文域对象 const documentFields = await app.ActiveDocument.DocumentFields; }
插入公文域
在指定位置插入公文域。
语法
表达式.ActiveDocument.DocumentFields.Add()
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Name
String
是
公文域名称。
Range
Object
是
公文域范围。
Hidden
Boolean
否
是否隐藏。取值范围如下:
false(默认):显示。
true:隐藏。
PrintOut
Boolean
否
是否可打印。取值范围如下:
true(默认):可打印。
false:不可打印。
ReadOnly
Boolean
否
是否只读。取值范围如下:
false(默认):否。
true:是。
Range说明
属性
数据类型
是否必填
描述
Start
Number
是
开始位置。
End
Number
是
结束位置。
返回值
属性
数据类型
描述
params1
String
返回值1说明。
params2
Number
返回值2说明。
示例
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()
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Name
String
是
公文域名称。
Range
Object
是
公文域范围。
Hidden
Boolean
否
是否隐藏。取值范围如下:
false(默认):显示。
true:隐藏。
PrintOut
Boolean
否
是否可打印。取值范围如下:
true(默认):可打印。
false:不可打印。
ReadOnly
Boolean
否
是否只读。取值范围如下:
false(默认):否。
true:是。
Value
String
否
域对应的值。
Range说明
属性
数据类型
是否必填
描述
Start
Number
是
开始位置。
End
Number
是
结束位置。
示例
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
表达式:文档类型应用对象
返回值
返回
Number
表示公文域的个数。示例
async function example() { await instance.ready(); const app = instance.Application; // 公文域的个数 const count = await app.ActiveDocument.DocumentFields.Count; console.log(count); }
获取公文域名称
获取所有公文域名称。
语法
表达式.ActiveDocument.DocumentFields.GetAllNames()
表达式:文档类型应用对象
返回值
返回
Array
表示所有公文域的名称。示例
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(Name)
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Name
String
是
公文域名称。
返回值
返回
Boolean
表示是否有某公文域。示例
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({ Index, Name })
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Index
Number
否
公文域索引。
Name
String
否
公文域名称。
返回值
返回
DocumentField
表示单个公文域。示例
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()
表达式:文档类型应用对象
说明如需批量删除公文域,您可以通过循环实现该功能。
参数
属性
数据类型
是否必填
描述
Index
Number
否
公文域索引。
Name
String
否
公文域名称。
示例
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()
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Index
Number
否
公文域索引。
Name
String
否
公文域名称。
示例
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()
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Index
Number
否
公文域索引。
Name
String
否
公文域名称。
示例
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
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Index
Number
否
公文域索引。
Name
String
否
公文域名称。
返回值
返回
Boolean
表示该公文域是否隐藏。示例
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
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Index
Number
否
公文域索引。
Name
String
否
公文域名称。
返回值
返回
Boolean
表示该公文域是否可打印。示例
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
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Index
Number
否
公文域索引。
Name
String
否
公文域名称。
返回值
返回
Boolean
表示该公文域是否只读。示例
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
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Index
Number
否
公文域索引。
Name
String
否
公文域范围。
返回值
返回
Range
对象表示该公文域的范围。示例
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
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Index
Number
否
公文域索引。
Name
String
否
公文域名称。
返回值
返回
String
表示该公文域的名称。示例
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
表达式:文档类型应用对象
返回值
返回
String
表示对应公文域的值。示例
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
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Index
Number
否
公文域索引。
Name
String
否
公文域样式。
返回值
返回
Style
对象表示该公文域的样式。示例
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(Name)
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Name
String
是
公文域名称。
返回值
返回
Array
表示所有公文域的名称。示例
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); }
批量替换公文域内容
语法
表达式.ActiveDocument.DocumentFields.SetDocumentFieldsValues({Value, Data})
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
说明
Value
String
是
批量替换内容
Data
Array.<Object>
是
公文域的Index 或者 Name
Data数据说明
属性
数据类型
是否必填
说明
Index
Number
Index或Name,二选一
序列
Name
String
Index或Name,二选一
名称
示例
async function example() { await instance.ready(); const app = instance.Application; const dfs = [ { Name: '2', Range: { Start: 30, End: 31 }, Value: '2', }, { Name: '3', Range: { Start: 33, End: 34 }, Value: '3', }, { Name: '4', Range: { Start: 35, End: 36 }, Value: '4', }]; await app.ActiveDocument.DocumentFields.AddDocumentFields(dfs); await app.ActiveDocument.DocumentFields.SetDocumentFieldsValues({ Value: "公文域批量替换", Arrays: [{Name: '2'}, {Name: '3'}, {Name: '4'}] }); }