阅读Word文档并转换为PDF

时间:2015-12-16 11:50:52

标签: powershell pdf

我在一个文件夹中有数千个word文档。我的老板要我将所有这些文件转换为PDF。我找到了解决方法,但我需要在文档中找到一个特定的单词,然后使用以下行作为转换后的文件名。

例如,我有test1.doc,我需要找到字符串"rule1(以双引号开头)然后读取字符串rule1后面的4个单词,然后使用这些4单词作为PDF格式的转换文件的文件名。更清楚的是,如果我有test1.doc并且test1.doc中有字符串"rule1 word1 word2 word3 word4 ...,我想批量转换test1.docword1 word2 word3 word4.pdf

我找到了这个脚本,但我不知道如何修改它。此脚本只将具有相同名称的所有文件转换为PDF。

$wdFormatPDF = 17
$word = New-Object -ComObject Word.Application
$word.Visible = $false
$folderpath = "C:\Users\Administrator\Desktop\test\*"
$fileTypes = "*.docx","*doc"
Get-ChildItem -Path $folderpath -Include $fileTypes | ForEach-Object {
  $path =  ($_.fullname).Substring(0, ($_.FullName).LastIndexOf("."))
  "Converting $path to pdf ..."
  $doc = $word.Documents.Open($_.FullName)
  $doc.SaveAs([ref]$path, [ref]$wdFormatPDF)
  $doc.Close()
}
$word.Quit()

1 个答案:

答案 0 :(得分:0)

你可以在powershell中使用ComObjects获得你想要的东西:

Powershell search matching string in word document