WPS 基础接口 > 演示 API 参考 > Shapes > Shapes 对象
指定的幻灯片上所有 Shape 对象的集合。

说明

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

注释
若要使用文档中的形状的子集(例如,只对文档中的自选图形或选定的形状进行操作),则必须构造一个包含要使用的形状的 ShapeRange 集合。有关如何使用一个形状或同时使用多个形状的概述,请参阅 使用形状(图形对象)。

示例

使用 Shapes 属性返回 Shapes 集合。以下示例选择当前演示文稿中的所有形状。

示例代码
ActivePresentation.Slides.Item(1).Shapes.SelectAll()
注释
若要同时对文档中的所有形状进行某种操作(例如删除或设置一个属性),可不带参数使用 Range 方法创建一个 ShapeRange 对象,该对象包含 Shapes 集合中的所有形状,然后对 ShapeRange 对象应用相应的属性或方法。

使用 AddCalloutAddCommentAddConnectorAddCurveAddLabelAddLineAddMediaObjectAddOLEObjectAddPictureAddPlaceholderAddPolylineAddShapeAddTableAddTextboxAddTextEffectAddTitle 方法创建一个新形状并将其添加到 Shapes 集合中。联合使用 BuildFreeform 方法和 ConvertToShape 方法创建一个新任意多边形并将其添加到集合中。以下示例在活动演示文稿中添加一个矩形。

示例代码
ActivePresentation.Slides.Item(1).Shapes.AddShape(msoShapeRectangle, 50, 50, 100, 200)

使用 Shapes(index) 返回单个 Shape 对象,其中 index 是形状的名称或索引号。以下示例将活动演示文稿中第一个形状的填充设为预设的底纹。

示例代码
ActivePresentation.Slides.Item(1).Shapes.Item(1).Fill 
    .PresetGradient(msoGradientHorizontal, 1, msoGradientBrass)

使用 Shapes.Range(index) 返回一个 ShapeRange 集合,该集合代表 Shapes 集合的一个子集,其中 index 是形状的名称或索引号,或由形状的名称或索引号组成的数组。以下示例设置活动演示文稿中第一个和第三个形状的填充图案。

示例代码
ActivePresentation.Slides.Item(1).Shapes.Range([1, 3]).Fill 
    .Patterned(msoPatternHorizontalBrick)

使用 Shapes.Placeholders(index) 返回一个代表占位符的 Shape 对象,其中 index 是占位符编号。如果指定的幻灯片有标题,则使用 Shapes.Placeholders(1)Shapes.Title 返回标题占位符。以下示例在活动演示文稿中添加一张幻灯片并为标题和副标题添加文本(副标题是此版式的幻灯片中的第二个占位符)。

示例代码
let myShape = ActivePresentation.Slides.Add(1, ppLayoutTitle).Shapes
myShape.Title.TextFrame.TextRange.Text = "This is the title text"
myShape.Placeholders.Item(2).TextFrame.TextRange.Text = "This is subtitle text"


请参阅