Skip to content

形状(Shapes)

指定幻灯片上所有 Shape 对象的集合

方法列表

方法说明
将图片插入到当前 PPT 中
创建一个文本框。返回一个 Shape 对象,该对象代表新的文本框
插入音视频对象。
替换 PPT 中选中的图片
代表绘图层中的对象,例如自选图形、任意多边形、OLE 对象或图片
表示 Shape 对象中的动作设定集合
返回或设置指定的 Shape 或 ShapeRange 对象的形状类型
返回一个 FillFormat 对象,该对象包含指定形状的填充格式属性
返回指定形状的发光格式
返回指定形状是否有文本框
返回指定形状的标识符
返回或设置指定对象的高度
返回或设置指定对象的宽度
返回从形状边界框的左边缘到幻灯片左边缘的距离
返回或设置指定形状绕 z 轴旋转的角度
返回指定形状的阴影格式
返回一个代表指定对象的标签的 Tags 对象
表示 Shape 对象中的文字框架。包含文本框中的文字框架的属性和控件的对齐方式和定位的文本框架的方法
返回/设置从形状边界框的上边缘到幻灯片上边缘的距离
返回单个形状或形状范围内多个形状的类型
返回指定的 Shape 对象的音视频播放范围
返回指定的 Shape 对象的音视频信息(包括当前播放时间,是否全屏,是否静音,音量,是否在播放)

AddPicture()

将图片插入到当前 PPT 中

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.AddPicture({ FileName, LinkToFile, SaveWithDocument, Left, Top, Width, Height, Scale })

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

参数

属性数据类型默认值必填说明
FileName
String
要在其中创建 OLE 对象的文件(可以是 Blob 文件对象或者 Url 链接)
LinkToFile
Enum
确定是否将图片链接到从中创建该图片的文件,详细可参考 MsoTriState
SaveWithDocument
Enum
确定是否将已链接的图片插入到文档一起保存。如果 LinkToFile 为 msoFalse,则此参数必须为 msoTrue,详细可参考 MsoTriState
Left
Number
图片左边缘相对于幻灯片左边缘的位置
Top
Number
图片上边缘相对于幻灯片上边缘的位置
Width
Number
图片的宽度
Height
Number
图片的高度
Scale
Boolean
按幻灯片比例计算宽高和坐标

示例

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

  const app = instance.Application

  // 将图片插入到当前 PPT 中
  await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.AddPicture({
    FileName:
      'https://img8.file.cache.docer.com/storage/1626952237972828328/0e7c3a748ed2d065749b9659f54b679e.jpeg', // 来自「插入在线图片」的稻壳素材的图片
    LinkToFile: -1,
    SaveWithDocument: 0,
    Left: 0.1,
    Top: 0.1,
    Width: 0.3,
    Height: 0.3,
    Scale: true
  })
}

AddTextbox()

创建一个文本框。返回一个 Shape 对象,该对象代表新的文本框

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.AddTextbox({ Orientation, Left, Top, Width, Height, Color, Size, Scale, Bold, Italic, StrikeThrough, AlignMode })

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

参数

属性数据类型默认值必填说明
Orientation
Enum
文本打印方向,详细可参考 MsoTriState
Left
Number
文本框左边缘相对于幻灯片左边缘的位置
Top
Number
文本框上边缘相对于幻灯片上边缘的位置
Width
Number
文本框的宽度
Height
Number
文本框的高度
Color
String
文本的颜色
Size
Number
文本字体的大小
Scale
Boolean
文本是否按幻灯片比例计算宽高和坐标
Bold
Boolean
文本是否加粗
Italic
Boolean
文本是否斜体
StrikeThrough
Boolean
文本是否删除线
AlignMode
Number
文本如何对齐,1-左对齐,2-居中对齐,3-右对齐,4-两端对齐,5-分散对齐

返回值

返回一个 Shape 对象,该对象代表新的文本框

示例

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

  const app = instance.Application

  // 创建一个文本框。返回一个 Shape 对象,该对象代表新的文本框
  const textBox =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.AddTextbox({
      Orientation: 0,
      Left: 0.1,
      Top: 0.1,
      Width: 0.1,
      Height: undefined,
      Color: '#f00',
      Size: 36,
      Scale: true
    })
  textBox.TextFrame.TextRange.Text = '1245'
}

AddMediaObject()

插入音视频对象

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.AddMediaObject({ Type, FileName, File, Url, LinkToFile, Left, Top, Width, Height })

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

参数

属性数据类型默认值必填说明
Type
String
文件类型: audio,video
FileName
String
文件名
File
Object
要在其中创建 OLE 对象的文件(可以是 Blob 文件对象或者 File文件对象)
Url
String
文件的链接(支持Base64)
LinkToFile
Enum
确定是否将音视频链接到从中创建该音视频的文件,详细可参考 MsoTriState
Left
Number
对象左边缘相对于幻灯片左边缘的位置
Top
Number
对象上边缘相对于幻灯片上边缘的位置
Width
Number
对象的宽度
Height
Number
对象的高度

示例

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

  const app = instance.Application

  // 将视频插入到当前 PPT 中
  await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.AddMediaObject(
    {
      Type: 'video',
      FileName: 'video.mp4',
      Url: 'https://js2.epy.wpscdn.cn/security/video_laodonghetongguanli.mp4',
      LinkToFile: 0,
      Left: 100,
      Top: 200,
      Width: 300,
      Height: 300
    }
  )
}

提示

参数Url提供的视频地址,需确保不跨域且有权限访问

ReplacePicture()

替换 PPT 中选中的图片

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.ReplacePicture({ FileName, IsKeepShapeSize })

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

参数

属性数据类型默认值必填说明
FileName
String/Object
图片源。可以是 url 或者 Blob 对象,用以替换选中的图片
IsKeepShapeSize
Boolean
是否保持比例。为 true 时,原来图片对象的大小不会改变,为 false 会根据图片的宽高比例重新设置选中对象的宽高

示例

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

  const app = instance.Application

  // 替换 PPT 中选中的图片
  await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.ReplacePicture(
    {
      FileName:
        'https://img8.file.cache.docer.com/storage/1626952237972828328/0e7c3a748ed2d065749b9659f54b679e.jpeg', // 来自「插入在线图片」的稻壳素材的图片
      IsKeepShapeSize: true
    }
  )
}

形状

Item()

代表绘图层中的对象,例如自选图形、任意多边形、OLE 对象或图片

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index)

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

示例

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

  const app = instance.Application

  // 代表绘图层中的对象,例如自选图形、任意多边形、OLE 对象或图片
  const shape =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1)
}

Item().ActionSettings

表示 Shape 对象中的动作设定集合

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).ActionSettings

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

示例

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

  const app = instance.Application

  // 表示 Shape 对象中的动作设定集合
  const ActionSettings =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1)
      .ActionSettings
}

Item().AutoShapeType

返回或设置指定的 Shape 或 ShapeRange 对象的形状类型

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).AutoShapeType

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

示例

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

  const app = instance.Application

  // 返回或设置指定的 Shape 或 ShapeRange 对象的形状类型
  const AutoShapeType =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1)
      .AutoShapeType
}

Item().Fill

返回一个 FillFormat 对象,该对象包含指定形状的填充格式属性

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).Fill

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

示例

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

  const app = instance.Application

  // 返回一个 FillFormat 对象,该对象包含指定形状的填充格式属性
  const Fill =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1).Fill
}

Item().Glow

返回指定形状的发光格式

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).Glow

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

示例

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

  const app = instance.Application

  // 返回指定形状的发光格式
  const Glow =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1).Glow
}

Item().HasTextFrame

返回指定形状是否有文本框

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).HasTextFrame

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

示例

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

  const app = instance.Application

  // 返回指定形状是否有文本框
  const HasTextFrame =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1)
      .HasTextFrame
}

Item().Id

返回指定形状的标识符

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).Id

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

示例

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

  const app = instance.Application

  // 返回指定形状的标识符
  const Id =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1).Id
}

Item().Height

返回或设置指定对象的高度

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).Height

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

示例

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

  const app = instance.Application

  // 返回或设置指定对象的高度
  const Height =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1)
      .Height
}

Item().Width

返回或设置指定对象的宽度

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).Width

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

示例

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

  const app = instance.Application

  // 返回或设置指定对象的宽度
  const Width =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1).Width
}

Item().Left

返回从形状边界框的左边缘到幻灯片左边缘的距离

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).Left

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

示例

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

  const app = instance.Application

  // 返回从形状边界框的左边缘到幻灯片左边缘的距离
  const Left =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1).Left
}

Item().Rotation

返回或设置指定形状绕 z 轴旋转的角度

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).Rotation

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

示例

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

  const app = instance.Application

  // 返回或设置指定形状绕 z 轴旋转的角度
  const Rotation =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1)
      .Rotation
}

Item().Shadow

返回指定形状的阴影格式

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).Shadow

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

示例

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

  const app = instance.Application

  // 返回指定形状的阴影格式
  const Shadow =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1)
      .Shadow
}

Item().Tags

返回一个代表指定对象的标签的 Tags 对象

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).Tags

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

示例

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

  const app = instance.Application

  // 返回一个代表指定对象的标签的 Tags 对象
  const Tags =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1).Tags
}

Item().TextFrame

表示 Shape 对象中的文字框架。包含文本框中的文字框架的属性和控件的对齐方式和定位的文本框架的方法

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).TextFrame

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

示例

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

  const app = instance.Application

  // 表示 Shape 对象中的文字框架。包含文本框中的文字框架的属性和控件的对齐方式和定位的文本框架的方法
  const TextFrame =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1)
      .TextFrame
}

Item().Top

返回/设置从形状边界框的上边缘到幻灯片上边缘的距离

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).Top

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

示例

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

  const app = instance.Application

  // 返回/设置从形状边界框的上边缘到幻灯片上边缘的距离
  const Top =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1).Top
  app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1).Top = 10
}

Item().Type

返回单个形状或形状范围内多个形状的类型

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).Type

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

示例

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

  const app = instance.Application

  // 返回单个形状或形状范围内多个形状的类型
  const Type =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1).Type
}

Item().PlayRange

返回指定的 Shape 对象的音视频播放范围

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).PlayRange

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

示例

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

  const app = instance.Application

  // 返回指定的 Shape 对象的音视频播放范围
  const PlayRange =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1).PlayRange
}

Item().MediaInfo

返回指定的 Shape 对象的音视频信息(包括当前播放时间,是否全屏,是否静音,音量,是否在播放)

语法

表达式.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(Index).MediaInfo

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

示例

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

  const app = instance.Application

  // 返回指定的 Shape 对象的音视频信息
  //(包括当前播放时间,是否全屏,是否静音,音量,是否在播放)
  const MediaInfo =
    await app.ActivePresentation.SlideShowWindow.View.Slide.Shapes.Item(1).MediaInfo
}