有没有办法使用VSTO访问PowerPoint演示文稿中当前活动的幻灯片?如果我能获得当前活跃的Shape,也会很好.我知道如何遍历幻灯片/形状,但我找不到任何属性来确定幻灯片/形状是否处于活动状态:
foreach (Slide slide in presentation.Slides)
{
foreach (Shape shape in slide.Shapes)
{
}
}
Run Code Online (Sandbox Code Playgroud)
查看.Selection对象.
它有一个.Type属性,告诉你选择了什么.如果是SlideRange,则选择可能是一个或多个幻灯片; 由你决定如果> 1,但如果为1,那么.Selection.SlideRange(1)为你提供了对所选幻灯片的引用.
.Type可能会返回ShapeRange,在这种情况下,如果选择了多个形状,则使用.Selection.ShapeRange(1)来获取当前形状或范围中的第一个形状.形状的.Parent属性返回对形状所在的幻灯片的引用(幻灯片,母版,布局等).
如果.Type返回TextRange,则必须在父链上走几步; 文本的父级是文本范围,textrange的父级是包含的形状,形状的父级是形状所在的幻灯片.
这在某些版本的PowerPoint 2007中可能会崩溃(我记得它在SP1或2之前已经破了),并且在2010年选择表格中的文本时它仍然被打破.您可以操作文本,可以访问包含文本的形状的某些属性,但不是全部,并且您无法将.Parent梯子爬到幻灯片上.
| 归档时间: |
|
| 查看次数: |
4357 次 |
| 最近记录: |