【问题标题】:VBA equivalent to Save As Picture in PPTVBA相当于PPT中的另存为图片
【发布时间】:2017-09-13 08:37:44
【问题描述】:

我正在尝试使用 vba 将分组形状保存为 powerpoint 中的图像。您可以通过右键单击该组来使用“另存为图片”功能产生高质量的图像。我尝试重新创建右键单击功能会产生模糊、低质量的图像。有没有办法完全重新创建右键另存为图片而不是导出?

ActivePresentation.Slides(1).Select
Call ActiveWindow.Selection.ShapeRange(1).Export( _
"C:\myloction.png", _
ppShapeFormatPNG)

【问题讨论】:

  • 我也很好奇为什么右键选项会给你不同的分辨率

标签: vba powerpoint


【解决方案1】:

在 ppShapeFormat 参数之后添加可选的 scaleheight/scalewidth 参数。结果似乎几乎是随机的,我不知道参数应该与什么相关,但是你输入的数字越大,导出图像的 rez 就越高。

【讨论】:

  • 我试图理解数字和比例之间的关系,但我做不到。最后一个参数好像没什么用。
  • 这成功了!我给的数字越大,图像越清晰。 'Call ActiveWindow.Selection.ShapeRange(1).Export(_strpath, ppShapeFormatPNG, 3072, 2304, ppScaleToFit)' 匹配右键单击->另存为选项的质量。
  • 感谢您的更新。 3072是PPT中的幻数;这是您在导出完整图像时可以与 Slide.Export 一起使用的最大像素数,至少在 2013 年左右之前的版本中是这样。现在,如果只有 Kozmic 灯泡能在上面继续显示这个诱人的巧合的含义...... ;-)
猜你喜欢
  • 2013-04-09
  • 1970-01-01
  • 2021-10-24
  • 2021-12-12
  • 2023-02-10
  • 2021-10-18
  • 1970-01-01
  • 1970-01-01
  • 2011-02-27
相关资源
最近更新 更多