# 选区(Selection)

代表指定的文档窗口中的选定内容

### 属性列表

|属性|说明|
|-|-|
|[GetActiveShapeImg](#getactiveshapeimg)|代表指定的文档窗口中的选定内容|
|[ClearShapeSelect](#clearshapeselect)|取消shape对象选中|
|[Copy](#copy)|复制选中幻灯片|
|[Paste](#paste)|粘贴选中幻灯片|
|[Text](#text)|获取选中文本|
### 方法列表

|方法|说明|
|-|-|
|[SelectSlide()](#selectslide)|选中幻灯片|
|[SelectShape()](#selectshape)|选中对象|
|[SelectText()](#selecttext)|选中文本|


## GetActiveShapeImg

代表指定的文档窗口中的选定内容

### 语法

`表达式.ActiveWindow.GetActiveShapeImg`

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

### 示例

```js
//@file=base.pptx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 文档窗口对象
  const activeWindow = await app.ActiveWindow

  // 选区对象
  const selection = await activeWindow.Selection

  // 获取选中图片信息（前置条件图片已选中）
  const imgInfo = await selection.GetActiveShapeImg()
  console.log('图片信息：', imgInfo)
}
```

## ClearShapeSelect

取消shape对象选中

### 语法

`表达式.ActiveWindow.Selection.ClearShapeSelect`

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

### 示例

```js
//@file=base.pptx
async function example() {
  await instance.ready();

  const app = instance.Application;
  
  // 文档窗口对象
  const activeWindow = await app.ActiveWindow;

  // 选区对象
  const selection = await activeWindow.Selection;

 // 取消对象选中（前置条件对象已选中）
  await selection.ClearShapeSelect()
}
```
## Copy

复制选中幻灯片

### 语法

`表达式.ActiveWindow.Selection.Copy`

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

### 示例

```js
//@file=base.pptx
async function example() {
  await instance.ready();

  const app = instance.Application;
  
  // 文档窗口对象
  const activeWindow = await app.ActiveWindow;

  // 选区对象
  const selection = await activeWindow.Selection;

 // 复制选中幻灯片
  const data = await selection.Copy()
}
```
## Paste

粘贴选中幻灯片

### 语法

`表达式.ActiveWindow.Selection.Paste`

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

### 示例

```js
//@file=base.pptx
async function example() {
  await instance.ready();

  const app = instance.Application;
  
  // 文档窗口对象
  const activeWindow = await app.ActiveWindow;

  // 选区对象
  const selection = await activeWindow.Selection;

 // 复制幻灯片
  const data = await selection.Copy()
  await selection.Paste(data)
}
```
## Text

获取选中文本

### 语法

`表达式.ActiveWindow.Selection.TextRange.Text`

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

### 示例

```js
//@file=base.pptx
async function example() {
  await instance.ready();

  const app = instance.Application;
  
  // 文档窗口对象
  const activeWindow = await app.ActiveWindow;

  // 选区对象
  const selection = await activeWindow.Selection;
  
  // 获取选中文本
  const textRange = await selection.TextRange
  const text=await textRange.Text
  console.log("选中文本：", text);
}
```
## SelectSlide()

选中幻灯片

### 语法

`表达式.ActiveWindow.Selection.SelectSlide(SlideIndex)`

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

### 参数

传入一个数字，表明指定页的序列号。

| 属性       | 数据类型 | 默认值             | 必填 | 说明           |
| ---------- | -------- | ------------------ | ---- | -------------- |
| SlideIndex | `Number` | - | 是   | 指定页的序列号(从1开始) |

### 示例

```js
//@file=base.pptx
async function example() {
 await instance.ready()

  const app = instance.Application

  // 文档窗口对象
  const activeWindow = await app.ActiveWindow

  // 选区对象
  const selection = await activeWindow.Selection

  // 选中第1张幻灯片
  await selection.SelectSlide(1)
  
}
```

## SelectShape()

选中对象

### 语法

`表达式.ActiveWindow.Selection.SelectShape(ShapeIndex)`

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

### 参数

传入一个数字，表明指定对象的序列号。

| 属性       | 数据类型 | 默认值 | 必填 | 说明           |
| ---------- | -------- | ------ | ---- | -------------- |
| ShapeIndex | `Number` | -      | 是   | 指定对象的序列号(从1开始) |

### 示例

```js
//@file=base.pptx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 文档窗口对象
  const activeWindow = await app.ActiveWindow

  // 选区对象
  const selection = await activeWindow.Selection

  // 选中第1个对象
  await selection.SelectShape(1)
  
}
```

## SelectText()

选中文本

### 语法

`表达式.ActiveWindow.Selection.SelectText(Start, End)`

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

### 参数

Start为必选参数，End为可选参数，表示选中从Start到End范围内的文本。


> 调用前需要先选中对象


| 属性  | 数据类型 | 默认值 | 必填 | 说明             |
| ----- | -------- | ------ | ---- | ---------------- |
| Start | `Number` | -      | 是   | 选中起始位置索引(从0开始) |
| End   | `Number` | -      | 否   | 选中结束位置索引(从0开始)，如果超过当前文字长度则默认选择最后一个文字 |

### 示例

```js
//@file=base.pptx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 文档窗口对象
  const activeWindow = await app.ActiveWindow

  // 选区对象
  const selection = await activeWindow.Selection

  // 先选中一个对象（前置条件）
  await selection.SelectShape(1)

  // 选中第0个字符到第5个字符的文本
  await selection.SelectText(0, 5)
  
}
```