【问题标题】:How to bundle my own images and call from function如何捆绑我自己的图像并从函数调用
【发布时间】:2019-12-08 02:54:07
【问题描述】:

我已经为 Powerpoint 构建了几个自定义加载项。我使用Custom UI Editor for Office 将它们集成到 PPT 中。

作为此过程的一部分,我可以为按钮制作自己的图标,只需将我自己的 .png 文件“插入”到 PPT 中(大概在后端的某个位置,如果我要解开 .zip. 文件每个 PPT 实际上都是。

现在,我想创建一个按钮,允许用户轻松插入country flag icons,我可以获取.svg 格式。如何将这些.svg.png 文件捆绑到PPT 中,并从模​​块中调用它们?

(我不认为这是我遇到问题的模块调用 - 我只是不知道如何将图像文件捆绑到 PPT 中。)


[编辑] 或者,我要问的是:如何创建一个类似于您从Insert >> Icons 获得的“插入图标”界面?

(更新:John Korchok 的回答明确表示这是不可能的)


[EDIT2] 如果您将您的 powerpoint 从 .pptm 重命名为 .zip```, you can see a folder inside the Zip file called ```ppt。在其中,您会获得以下文件夹:

media 文件夹内是从插入 PPT 的图片创建的 EMF 和 WMF 文件(通过正常的插入图像功能,或简单的复制和粘贴)。

有没有一种方法可以编写一个从该文件夹中调用图像的函数?

【问题讨论】:

  • 插入图标命令使用 Microsoft 服务器来提供图标。它们不是您安装的一部分。编写类似的东西并不容易,并且取决于您服务器上 100% 的正常运行时间。

标签: vba powerpoint


【解决方案1】:

加载项的任何部分都不能存储外部文件。我在加载项文件夹中添加了一个图像文件夹,然后创建一个安装程序,将加载项和文件夹放置在正确的位置。

您还可以将图像放在网络服务器上,然后让 PowerPoint 通过 VBA 下载它们。当然,您需要快速连接。语法如下:

    Dim oPicture As Shape
    Set oPicture = ActivePresentation.Slides(1).Shapes.AddPicture("http://www.brandwares.com/images/iconfile.png", False, True, 0, 0, -1, -1)

【讨论】:

  • 在看到您的回答后,我刚刚编辑了我的问题 - 有没有办法做我现在要问的事情? (互联网绝对不是这个选项)
  • “在加载项文件夹中添加图片文件夹”是什么意思?
  • 我建议您另存为加载项并检查文件夹结构。没有媒体文件夹,您无法添加。我不确定如何更清楚地表达“在加载项文件夹中添加图像文件夹”。在 Addins 文件夹中创建一个文件夹,然后将您的图像放在那里。对您的加载项进行编程以在其中查找图像。您可以使用相对路径。
  • 抱歉,我对此非常愚蠢。但是,加载项文件夹解决方案不起作用,因为我需要能够分发这个修改后的 PPT 文件。我再次编辑了我的问题 (EDIT2) 以明确我所说的 media 文件夹的意思 - 有没有办法利用这个?
  • 您是在分发加载项还是演示文稿?或两者?要访问演示文稿中的媒体文件夹,您必须将其解压缩。将图像放置在演示文稿中并在 VBA 中以形状的形式访问它们更简单。您不能将文件放置在演示文稿某处未显示的媒体文件夹中。
猜你喜欢
  • 1970-01-01
  • 2018-10-29
  • 1970-01-01
  • 2014-08-28
  • 1970-01-01
  • 2014-11-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多