【问题标题】:Extract all images from PowerPoint using COM使用 COM 从 PowerPoint 中提取所有图像
【发布时间】:2010-07-23 01:01:56
【问题描述】:

如何使用 COM 以编程方式从 PowerPoint 文件中提取所有图像?

【问题讨论】:

标签: com powerpoint


【解决方案1】:

嗯,有两种方法。其中之一仅适用于 PowerPoint 2007 和 2010。但是:

  1. 这不是 COM - 您只需打开 压缩文件并转到 /media 文件夹,然后您可以访问 所有图片。
  2. 这些是原始图像,不是 PowerPoint 呈现的图像,如果 你对他们施加了任何影响 (如亮度/对比度、重新着色、 等)。

COM 中的方法是通过一个名为Shape.Export 的已弃用功能。为了访问它的 Intellisense,您必须在 VBE 中选择“显示隐藏成员”(假设您为此使用 VBA)。这是使用它的代码:

Sub SaveAllPictures()
    Dim ap As Presentation: Set ap = ActivePresentation
    Dim savePath As String
    savePath = "C:\Users\me\Desktop\files\"
    Dim i As Integer
    Dim sl As Slide
    Dim sh As Shape
    For Each sl In ap.Slides
        For Each sh In sl.Shapes
            If sh.Type = msoPicture Then
                sh.Export PathName:=savePath & sh.Name & CStr(i) & ".png", Filter:=ppShapeFormatPNG
                i = i + 1
            End If
        Next
    Next
End Sub

【讨论】:

  • 这看起来很棒,但我无法测试它! ,不支持导出功能(sh.Export),我正在导入Microsoft.Office.Interop.PowerPoint 15版,请提示??
猜你喜欢
  • 1970-01-01
  • 2022-11-09
  • 1970-01-01
  • 2021-11-30
  • 2013-08-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-25
相关资源
最近更新 更多