我试图使用PowerShell将PowerPoint文件转换为PDF格式,并且能够这样做。但是,我正在尝试更进一步,并通过脚本选择“最小尺寸(在线发布)”选项。PowerPoint to PDF:最小尺寸选项
是否需要为此设置属性?我猜这是$ppQualityStandard
变量,但不完全确定。
编辑:这是我在用目前:
function ppt_to_pdf ($folderpath, $pptname) {
Add-Type -AssemblyName office
$ppFormatPDF = 2
$ppQualityStandard = 0
$p = New-Object -ComObject PowerPoint.Application
$p.Visible = [Microsoft.Office.Core.MsoTriState]::msoTrue
$ppt = $p.Presentations.Open("$folderpath\$pptname")
$ppt.SaveCopyAs("$folderpath\$pptname", 32)
$ppt.Close()
$p.Quit()
$p = $null
[gc]::collect()
[gc]::WaitForPendingFinalizers()
}
PowerShell不附带与PowerPoint相关的cmdlet。除非您具体告诉我们您正在使用哪些cmdlet以及它们来自哪里,尝试了哪些命令,哪些命令不起作用,否则您可能无法获得答案。 – mklement0
谢谢@ mklement0。我已经添加了当前用于将ppt转换为pdf的代码。 –
您的问题主要是关于Microsoft PowerPoint的VBA(COM)API;您使用PowerShell访问该API的事实是偶然的(除非您遇到PowerShell语法问题,但似乎并非如此)。我已经为你的问题添加了标签'powerpoint-vba'。快速浏览一下https://msdn.microsoft.com/EN-US/library/office/ff744735.aspx告诉我'.SaveCopyAs'方法没有采用质量参数。事实上,您可能不得不寻找一个单独的实用程序来减小PDF的大小。 – mklement0