首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >powershell word to pdf

powershell word to pdf
EN

Stack Overflow用户
提问于 2017-09-18 18:52:41
回答 1查看 3K关注 0票数 1

我修改了其他人在这个论坛上的内容,基于powershell Excel的成功使用,使之成为pdf,但没有成功。对我在以下代码中的失败有什么想法吗?我的目标是能够在不打开本机应用程序的情况下将整个文件夹的doc和docx文档转换为pdf。预先谢谢:

代码语言:javascript
复制
# Acquire a list of DOC files in a folder
$Word = New-Object -ComObject word.application 
$path = "c:\Users\Desktop\Test" 
$formats = "Microsoft.Office.Interop.Word.WdFixedFormatType" -as [type]
$Word.visible = $false
$fileTypes = "*.docx","*doc"
$Files = GET-CHILDITEM $path -include $fileTypes

Foreach ($File in $Files) {
    $filepath = Join-Path -path $path -childpath ($File.basename +".pdf")
    $Doc = $Word.open($File.fullname, 3)
    $Doc.Saved= $true
    "Converting $File to pdf ... $destPath"
    # Save this File as a PDF in Word 2010/2013
    $Doc.ExportAsFixedFormat($formats::wdTypePDF, $path)
    $Doc.FullName -replace '\.doc?$', '.pdf'
    $Doc.Close()
}
$Word.Quit()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-18 19:54:44

代码语言:javascript
复制
$path = 'C:\tests'

$wd = New-Object -ComObject Word.Application
Get-ChildItem -Path $path -Include *.doc, *.docx -Recurse |
    ForEach-Object {
        $doc = $wd.Documents.Open($_.Fullname)
        $pdf = $_.FullName -replace $_.Extension, '.pdf'
        $doc.ExportAsFixedFormat($pdf,17,$false,0,3,1,1,0,$false, $false,0,$false, $true)
        $doc.Close()
    }
$wd.Quit()

这将穿过文件夹,然后查找.doc和.docx文件。

然后打开每个文件,创建一个新的保存名称,并导出到PDF。

您可以从ExportAsFixedFormat上了解更多关于https://msdn.microsoft.com/en-us/library/bb256835(v=office.12).aspx的信息。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46286292

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档