2016-04-25 23 views
0

PowerShellを使用してPowerPointファイルをPDFに変換しようとしましたが、これを実行できました。しかし、私はこの一歩をさらに踏み出し、スクリプトを通して「Minimum Size(publishing online)」オプションを選択しようとしています。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() 
} 
+1

を検索します。PowerShellにはPowerPoint関連のコマンドレットが付属していません。使用しているコマンドレットと使用している場所、使用したコマンドレット、動作しなかったコマンドレットを具体的に教えていない限り、回答が得られない場合があります。 – mklement0

+0

ありがとう@ mklement0。私は現在、pptをpdfに変換するために使用されているコードを追加しました。 –

+0

あなたの質問は主にMicrosoft PowerPointのVBA(COM)APIに関するものです。そのAPIにアクセスするためにPowerShellを使用しているという事実は付随的です(PowerShellの構文に問題がある場合を除きます)。あなたの質問に 'powerpoint-vba'タグを追加しました。 https://msdn.microsoft.com/EN-US/library/office/ff744735.aspxを見れば、 '.SaveCopyAs'メソッドは品質パラメータを取らないことがわかります。事実の後にPDFのサイズを縮小する別のユーティリティを探す必要があるかもしれません。 – mklement0

答えて

1

私はあなたが.ExportAsFixedFormatではなく.SaveCopyAs使用する必要があります疑い。

それはどちらかとすることができる、他のパラメータのうち、タイプppFixedFormatIntentとしてIntentを取る:

ppFixedFormatIntentScreen(= 1)

又は

ppFixedFormatIntentPrint(= 2)

あります他のparmsのホスト。詳細については、PPTを起動し、VBA IDEに入り、F2キーを押してオブジェクトブラウザを開き、ExportAsFixedFormat

+0

++; 'ppFixedFormatIntentScreen'がデフォルトです。オンラインドキュメントはhttps://msdn.microsoft.com/en-us/library/office/ff746080.aspx – mklement0

+1

@ mklement0です。編集/追加情報をありがとう。 –