3

在 MS-Powerpoint 2010 中,插入名称为 的图像ABC.gif

当我使用代码读取.pptx文件时,我无法获得应该是的原始图像的文件名ABC.gif,而是得到 " Image1.gif

有人可以告诉我如何获得原始图像的 fileName ABC.gif

使用Microsoft.Office.Interop.PowerPoint, 进行代码操作。

4

1 回答 1

2

不确定您使用的是 VB.Net 还是 C#,所以我将使用 VBA 代码进行解释。您可以轻松地使其适应您的代码。

要获取文件名,您必须确保不只是“插入”图像,而是“插入和链接”请参见下面的屏幕截图。

在此处输入图像描述

请记住,在这种情况下, MS-PP 也会将图片重命名为“图片 1、图片 2 ”等,但您始终可以使用它来获取完整的Filename + Path。一旦你有了它,你就可以轻松地检索文件名。LinkFormat.SourceFullName

看这个例子

Option Explicit

Sub Sample()
    Dim img As Shape

    For Each img In ActivePresentation.Slides(1).Shapes
        '~~> Type is 11 when you insert and link an image
        If img.Type = msoLinkedPicture Then
            Debug.Print img.LinkFormat.SourceFullName
            Debug.Print img.Name
        End If
    Next
End Sub

截屏

在此处输入图像描述

于 2013-01-01T06:32:08.970 回答