如何检查PowerPoint幻灯片是否包含图像

时间:2019-07-16 14:04:15

标签: c# powerpoint office-interop

我正在解析PowerPoint文件,某些幻灯片包含图像。如何检测幻灯片中是否有图像?

我正在检查幻灯片中的所有形状,但是看不到任何可以让我知道是否有图像的属性。目前,如果我要检查shape.AlternativeText,我注意到它们可能包含图像名称或扩展名为.png,.jpg,.gif等的路径。这可以让我知道哪些形状包含图像,但这不适用于所有图像,并且不一致。

有人知道检测图像的方法吗? shape.hasImage会很好。

谢谢。

1 个答案:

答案 0 :(得分:0)

图像可以像放置图像一样放置,可以放置在占位符中,也可以将图片填充为形状,或将图片填充为背景,或链接图像。因此,查找所有实例将需要更多工作。这会找到一张放在幻灯片上但不在占位符中的照片:

Sub FindPicture()
  Dim oSlide As Slide
  Dim oShape As Shape
  For Each oSlide In ActivePresentation.Slides
    For Each oShape In oSlide.Shapes
      If oShape.Type = msoPicture Then
        MsgBox oShape.Name
      End If
    Next oShape
  Next oSlide
End Sub