vba - 如何捆绑我自己的图像并从函数调用
问题描述
我已经为 Powerpoint 构建了几个自定义加载项。我使用Office 的自定义 UI 编辑器将它们集成到 PPT 中。
作为这个过程的一部分,我可以制作自己的按钮图标,只需将我自己的.png
文件“插入”到 PPT 中(大概在后端的某个地方,如果我要解开.zip.
每个 PPT 实际存在的文件的话。
现在,我想创建一个按钮,让用户可以轻松插入国旗图标,我可以在.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 文件(通过正常的插入图像功能,或简单的复制和粘贴)。
有没有办法可以编写一个从该文件夹中调用图像的函数?
解决方案
加载项中没有任何部分可以存储外部文件。我在加载项文件夹中添加了一个图像文件夹,然后创建一个安装程序,将加载项和文件夹放置在正确的位置。
您还可以将图像放在网络服务器上,然后让 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)
推荐阅读
- ruby-on-rails - 如果当前对象的属性为 nil(jsonb 类型),则创建返回关联对象的属性值的方法
- swift - 从位于 tableviewCell 的 collectionViewCell 传递图像
- slim-lang - Slim 模板和 TailwindCSS 在类声明中使用 ' : '
- php - 身份验证尝试不起作用,但数据将存储在用户中
- php - 如何将 XML 文件放到 MYSQL 和 MYSQL 文件到 XML
- html - URL 片段可以指向没有 id 的 HTML 元素吗?
- amazon-web-services - 无法在 python 中使用来自 AWS Lambda 的 Boto3 客户端调用 SageMaker 端点(TensorFlow 模型)
- java - 世界杯板球比赛直播 API
- c# - C# - 没有简单的方法将十六进制和 ASCII 连接成一个字符串
- joomla - 使用多个表单字段进行服务器端验证