1

perl (ストロベリー) と win32::ole を使用して、powerpoint (office2010 から) を使用して ppt(x) を pdf に変換するのに問題があります。

Export関数を使用してjpgにエクスポートできますが、関数ExportAsFixedFormatの構文は非常にあいまいで、常に Win32::OLE(0.1709) error 0x80020011: "Does not support a collection".

これは私が試しているもののサンプルです

    my $ppoint = Win32::OLE->new('PowerPoint.Application', 'Quit');
    my $Presentation = $ppoint->Presentations->Open("$infile") || die("Una +ble to open document ", Win32::OLE->LastError()) ; 
    $Presentation->ExportAsFixedFormat("$outfile", 2, 2, "msoCTrue", "ppPrintHandoutHorizontalFir +st", "ppPrintOutputFourSlideHandouts", "msoFalse", "", "" , "", "Fals +e", "False", "False", "False", "False"); 

2 番目のパラメーターppFixedFormatTypePDFは 2 である必要があります

3 番目のパラメータ「ppFixedFormatIntentPrint」は 2 にする必要があります

誰でも実際の例を提案できますか?

4

2 に答える 2

1

golemwasher からの回答を完了するだけです。

use Win32::OLE::Const 'Microsoft PowerPoint';
...
$Presentation->SaveAs("$outfile",ppSaveAsPDF, 1);

これは Windows 7 で powerpoint 2007 を使用して動作しますが、戻り値は無視する必要があります。

于 2012-01-23T18:07:11.447 に答える
-1

を使って解決しました

$Presentation->SaveAs("$outfile", 32);

32 = pdf 形式と $outfile パスにフォワード スラッシュ : / が必要であることを見つけるのはトリッキーでした (\ を使用すると、混乱するエラーが発生しました)。

于 2011-09-30T12:28:51.910 に答える