将powerpoint中的内部图像转换为一种格式

时间:2012-07-25 20:29:53

标签: windows image png powerpoint

我看到了很多关于如何将整个幻灯片从powerpoint演示文稿导出到图像中的提示和技巧,但这不是我的追求。 相反,我试图转换所有非开放格式"单个幻灯片内的图像类型,并使用其友好的等效替换它们(就地)。 这主要来自Google Docs不了解.emf和.wmf格式(为什么呢?那么Open Source软件实际上支持它?)并且因为手动将图形导出为图像文件并将其重新插入到演示文稿中是非常的令人费解的过程,我想知道是否有人找到了一个很好的方法来做到这一点。

因此,摘要:将powerpoint演示文稿中的emf和wmf文件升级为png或jpg格式。 作为旁注,我可以将这些文件打开为zip文件并查看有问题的文件只在\ ppt \ media中,但只需更换文件就会导致Powerpoint删除之前引用的图像文件并抱怨某些内容可能是错。

1 个答案:

答案 0 :(得分:1)

对于每个“不友好”的图片,将其复制并粘贴为PNG(或JPG或任何您想要的),然后删除原始图片。

简单示例:

Sub ConvertShapeToPNG()
    Dim oSh As Shape
    Set oSh = ActiveWindow.Selection.ShapeRange(1)
    oSh.Copy
    ActiveWindow.Selection.SlideRange.Shapes.PasteSpecial ppPastePNG
    oSh.Delete
End Sub

在实践中,假设您想要一次性地进行此操作,而不是一次手动进行,您需要一种方法来判断图片是否“友好”(实际上是否是图片)。< / p>

您可以先检查oSh.Type = msoPicture(或其他几种可能的类型之一)。如果是图片,是格栅格式还是“不友好”格式?尝试取消组合形状的副本。如果尝试抛出错误,则它已经是栅格;如果没有错误,请删除生成的未组合形状/ shaperange和原始形状的副本。

一旦你复制/粘贴为PNG / etc,你需要拾取原始形状的x / y位置,将其应用于新的PNG形状,并可能将新形状移动到原始的z-顺序。