我正在寻找一种使用powershell通过“打印到pdf”打印pdf文件的方法,以确保pdf文件共享相同的pdf版本。这些文件应该被简单地覆盖。到目前为止,我的研究一遍又一遍地引导我使用相同的代码:
function ConvertTo-PDF {
param(
$TextDocumentPath
)
Add-Type -AssemblyName System.Drawing
$doc = New-Object System.Drawing.Printing.PrintDocument
$doc.DocumentName = $TextDocumentPath
$doc.PrinterSettings = new-Object System.Drawing.Printing.PrinterSettings
$doc.PrinterSettings.PrinterName = 'Microsoft Print to PDF'
$doc.PrinterSettings.PrintToFile = $true
$file=[io.fileinfo]$TextDocumentPath
$pdf= [io.path]::Combine($file.DirectoryName, $file.BaseName) + '.pdf'
$doc.PrinterSettings.PrintFileName = $pdf
$doc.Print()
$doc.Dispose()
}
起初似乎可行,它会创建一个同名的 pdf 文件,但它始终只是一个空白页。我发现很多人都有这个问题,我搜索了一段时间,但没有找到解决方案。我只能猜测我在这里遗漏了一些必要的东西,但我找不到它是什么。任何帮助表示赞赏。