本文介绍与文字文档Selection相关的API。
Selection
ActiveDocument.ActiveWindow.Selection
获取窗口或窗格中的当前选定内容。选定内容表示文档中的选定(或突出显示)区域,或者代表插入点(如果未选择文档中的任何内容)。
JS-SDK V1.1.10及以上版本支持此功能。
每个文档窗格只能有一个
Selection
对象,并且在整个应用程序中只能有一个活动的Selection
对象。
语法
表达式.ActiveDocument.ActiveWindow.Selection
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //获取选定内容对象 const selection = await app.ActiveDocument.ActiveWindow.Selection; }
方法
ActiveDocument.ActiveWindow.Selection.Copy()
通过Copy()
方法,您可以将选定内容复制到剪贴板。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.Copy()
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //获取选定内容对象 await app.ActiveDocument.Range.SetRange(1, 10); //将该选定内容复制到剪贴板 await app.ActiveDocument.ActiveWindow.Selection.Copy(); //内容已复制到剪切板,可通过Ctrl+V组合键粘贴 }
ActiveDocument.ActiveWindow.Selection.Delete()
您可以通过Delete()
方法,删除选定内容。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.Delete({ Unit, Count })
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Unit
Enum
是
指定要使用的度量单位,目前仅支持字符和线段。更多信息,请参见WdUnits。
Count
Number
否
要删除的单位数,目前仅支持删除1位,默认值为1。
示例
async function example() { await instance.ready(); const app = instance.Application; //删除选定内容 app.ActiveDocument.ActiveWindow.Selection.Delete(1); }
ActiveDocument.ActiveWindow.Selection.GoTo()
通过GoTo()
方法,您可以跳转到页面的指定位置,例如指定页面或者指定的书签。
JS-SDK V1.1.10及以上版本支持此功能。
由于文字文档是流式排版,大文档时跳转时间会比较长,建议加一个中间
loading
过渡效果。
语法
表达式.ActiveDocument.ActiveWindow.Selection.GoTo(What, Which, Count, Name)
表达式:文档类型应用对象。
参数
属性
数据类型
是否必填
描述
What
Number
否
指定区域或选定内容要移动到的项的类别。更多信息,请参见WdGoToItem。
Which
Number
否
指定区域或选定内容要移动到的项的位置。更多信息,请参见WdGoToDirection。
Count
Number
否
文档中的项的编号。默认值为1,仅正整数有效。
Name
String
否
书签名称。当参数What取值为
wdGoToBookmark
时,可写入书签名称。说明当写入书签名称和Count参数的编号不匹配时,无法执行跳转。
返回值
返回到跳转后的页面或书签。
示例
跳转到指定的页面
async function example() { await instance.ready(); const app = instance.Application; //跳转到指定的页面 const page = await app.ActiveDocument.ActiveWindow.Selection.GoTo( app.Enum.WdGoToItem.wdGoToPage, app.Enum.WdGoToDirection.wdGoToAbsolute, 3, ); }
跳转到指定的书签
async function example() { await instance.ready(); const app = instance.Application; //添加书签 await app.ActiveDocument.ActiveWindow.Bookmarks.Add({ Name: 'Aliyun', Range: { Start: 1, End: 10, }, }); //跳转到指定的书签 //方法一 await app.ActiveDocument.ActiveWindow.Selection.GoTo( app.Enum.WdGoToItem.wdGoToBookmark, app.Enum.WdGoToDirection.wdGoToAbsolute, undefined, 'Aliyun', ); //方法二 await app.ActiveDocument.ActiveWindow.Selection.GoTo({ What: app.Enum.WdGoToItem.wdGoToBookmark, Which: app.Enum.WdGoToDirection.wdGoToAbsolute, Name: 'Aliyun', }); }
ActiveDocument.ActiveWindow.Selection.Information()
通过Information()
方法,您可以获取指定所选内容的信息。
JS-SDK V1.1.10及以上版本支持此功能。
由于文字文档是流式排版,无法一开始就确定最终页数,只有浏览到最底部才能确定总页数。
语法
表达式.ActiveDocument.ActiveWindow.Selection.Information(WdInformation)
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
WdInformation
Enum
是
指定所选内容或区域返回信息的类型。更多信息,请参见WdInformation。
返回值
返回Number表示当前页页码。
示例
async function example() { await instance.ready(); const app = instance.Application; //获取当前页页码 const currentPage = await app.ActiveDocument.ActiveWindow.Selection.Information(app.Enum.WdInformation.wdActiveEndPageNumber); console.log(currentPage ); }
ActiveDocument.ActiveWindow.Selection.InsertAfter()
通过InsertAfter()
方法,您可以在选定内容后插入文本。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.InsertAfter({ Text })
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Text
String
是
需要插入的文本。
示例
async function example() { await instance.ready(); const app = instance.Application; //在选定内容后插入文本 await app.ActiveDocument.ActiveWindow.Selection.InsertAfter({ Text: 'Text', }); }
ActiveDocument.ActiveWindow.Selection.InsertBreak()
通过InsertBreak()
方法,您可以在选定内容后插入分隔符。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.InsertBreak({ Type })
表达式:文档类型应用对象
参数
属性
数据类型
必填
描述
Type
Enum
否
要插入分隔符的类型,默认值为
wdPageBreak
。更多信息,请参见WdBreakType。
示例
async function example() { await instance.ready(); const app = instance.Application; //在选定内容后插入分隔符 await app.ActiveDocument.ActiveWindow.Selection.InsertBreak(); }
ActiveDocument.ActiveWindow.Selection.InsertParagraph()
通过InsertParagraph()
方法,您可以用新段落替换选定内容。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.InsertParagraph()
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //用新段落替换选定内容 await app.ActiveDocument.ActiveWindow.Selection.InsertParagraph(); }
ActiveDocument.ActiveWindow.Selection.MoveDown()
通过MoveDown()
方法,您可以将选定内容向下移动。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.MoveDown({ Unit, Count, Extend })
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Unit
Enum
否
要使用的度量单位,默认值为
wdLine
。更多信息,请参见WdUnits。说明当取值为
wdWindow
时,无论参数Count取何值,都只能移动一个单位。其他取值可通过设置Count参数移动多个单位数。
Count
Number
否
选定内容移动的单位数,默认值为1。
Extend
Enum
否
指定选定内容移动的方式,默认值为
wdMove
。更多信息,请参见WdMovementType。说明当取值为
wdMove
时,则将选定内容折叠到末尾并向下移动。当取值为
wdExtend
时,则将选定内容向下扩展。
示例
async function example() { await instance.ready(); const app = instance.Application; //将选定内容向下移动 await app.ActiveDocument.ActiveWindow.Selection.MoveDown(); }
ActiveDocument.ActiveWindow.Selection.MoveLeft()
通过MoveLeft()
方法,您可以将选定内容向左移动。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.MoveLeft({ Unit, Count, Extend })
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Unit
Enum
否
要使用的度量单位,默认值为
wdCharacter
。更多信息,请参见WdUnits。Count
Number
否
选定内容移动的单位数,默认值为1。
Extend
Enum
否
指定选定内容移动的方式,默认值为
wdMove
。更多信息,请参见WdMovementType。说明当取值为
wdMove
时,则将选定内容折叠到末尾并向左移动。当取值为
wdExtend
时,则将选定内容向左扩展。
示例
async function example() { await instance.ready(); const app = instance.Application; //将选定内容向左移动 await app.ActiveDocument.ActiveWindow.Selection.MoveLeft(); }
ActiveDocument.ActiveWindow.Selection.MoveRight()
通过MoveRight()
方法,您可以将选定内容向右移动。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.MoveRight({ Unit, Count, Extend })
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Unit
Enum
否
要使用的度量单位,默认值为
wdCharacter
。更多信息,请参见WdUnits。Count
Number
否
选定内容移动的单位数,默认值为1。
Extend
Enum
否
指定选定内容移动的方式,默认值为
wdMove
。更多信息,请参见WdMovementType。说明当取值为
wdMove
时,则将选定内容折叠到末尾并向右移动。当取值为
wdExtend
时,则将选定内容向右扩展。
示例
async function example() { await instance.ready(); const app = instance.Application; //将选定内容向右移动 await app.ActiveDocument.ActiveWindow.Selection.MoveRight(); }
ActiveDocument.ActiveWindow.Selection.MoveUp()
通过MoveUp()
方法,您可以将选定内容向上移动。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.MoveUp({ Unit, Count, Extend })
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Unit
Enum
否
要使用的度量单位,默认值为
wdLine
。更多信息,请参见WdUnits。说明当取值为
wdWindow
时,无论参数Count取何值,都只能移动一个单位。其他取值可通过设置Count参数移动多个单位数。
Count
Number
否
选定内容移动的单位数,默认值为1。
Extend
Enum
否
指定选定内容移动的方式,默认值为
wdMove
。更多信息,请参见WdMovementType。说明当取值为
wdMove
时,则将选定内容折叠到末尾并向上移动。当取值为
wdExtend
时,则将选定内容向上扩展。
示例
async function example() { await instance.ready(); const app = instance.Application; //将选定内容向上移动 await app.ActiveDocument.ActiveWindow.Selection.MoveUp(); }
ActiveDocument.ActiveWindow.Selection.TypeBackspace()
通过TypeBackspace()
方法,您可以删除选定内容前的字符。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.TypeBackspace()
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //将选定内容向下移动 await app.ActiveDocument.ActiveWindow.Selection.MoveDown(); //删除选定内容前的字符 await app.ActiveDocument.ActiveWindow.Selection.TypeBackspace(); }
属性
ActiveDocument.ActiveWindow.Selection.Cells
通过Cells
属性,您可以获取选定内容中的所有单元格。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.Cells
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //获取选定内容对象 const selection = await app.ActiveDocument.ActiveWindow.Selection; //获取所有单元格 const font = await selection.Cells; }
ActiveDocument.ActiveWindow.Selection.Font
通过Font
属性,您可以获取选定内容的字符格式。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.Font
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //获取选定内容对象 const selection = await app.ActiveDocument.ActiveWindow.Selection; //获取选定内容的字符格式 const font = await selection.Font; }
ActiveDocument.ActiveWindow.Selection.InlineShapes
通过InlineShapes
属性,您可以获取选定内容中的所有嵌入式图形对象。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.InlineShapes
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //获取选定内容对象 const selection = await app.ActiveDocument.ActiveWindow.Selection; //获取所有嵌入式图形对象 const font = await selection.InlineShapes; }
ActiveDocument.ActiveWindow.Selection.ParagraphFormat
通过ParagraphFormat
属性,您可以获取选定内容中的段落设置。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.ParagraphFormat
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //获取选定内容对象 const selection = await app.ActiveDocument.ActiveWindow.Selection; //获取段落设置 const paragraphFormat = await selection.ParagraphFormat; }
ActiveDocument.ActiveWindow.Selection.Range
通过Range
属性,您可以获取指定内容中包含的文档部分。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.Range
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //获取选定内容对象 const selection = await app.ActiveDocument.ActiveWindow.Selection; //获取文档部分 const paragraphFormat = await selection.ParagraphFormat; }
ActiveDocument.ActiveWindow.Selection.Rows
通过Rows
属性,您可以获取选定内容中的所有表格行。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.Rows
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //获取选定内容对象 const selection = await app.ActiveDocument.ActiveWindow.Selection; //获取所有表格行 const paragraphFormat = await selection.ParagraphFormat; }
ActiveDocument.ActiveWindow.Selection.Tables
通过Tables
属性,您可以获取选定内容中的所有表格。
JS-SDK V1.1.10及以上版本支持此功能。
语法
表达式.ActiveDocument.ActiveWindow.Selection.Tables
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //获取选定内容对象 const selection = await app.ActiveDocument.ActiveWindow.Selection; //获取所有表格 const paragraphFormat = await selection.ParagraphFormat; }