답변:
이것이 내가하는 방법입니다.
유일한 단점을 클릭해야한다는 것입니다 확인을 각 파일에 대해 한 번.
이것은 stackoverflow.com 영역으로 밀어 넣을 수도 있지만 Word 2007을 스크립트하여 문서를 열고 PDF로 저장할 수 있습니다. 이를 위해서는 Office 2007과 Microsoft의 "PDF로 저장"플러그인 이 필요합니다 .
이것을 파일에 저장하고 다음을 SaveAsPDF.js
사용하여 명령 행에서 실행하십시오 cscript.exe //nologo SaveAsPDF.js SomeFolder\MyDocToConvert.doc
.
var fso = new ActiveXObject("Scripting.FileSystemObject");
var docPath = WScript.Arguments(0);
docPath = fso.GetAbsolutePathName(docPath);
var pdfPath = docPath.replace(/\.doc[^.]*$/, ".pdf");
var objWord = null;
try
{
WScript.Echo("Saving '" + docPath + "' as '" + pdfPath + "'...");
objWord = new ActiveXObject("Word.Application");
objWord.Visible = false;
var objDoc = objWord.Documents.Open(docPath);
var wdFormatPdf = 17;
objDoc.SaveAs(pdfPath, wdFormatPdf);
objDoc.Close();
WScript.Echo("Done.");
}
finally
{
if (objWord != null)
{
objWord.Quit();
}
}
글쎄, cutepdf & pdf99는 잘 작동하지만 PDFcreator 는 다른 두 가지보다 인쇄 품질이 높기 때문에 더 매력적이며 구성 옵션이 더 많고 오픈 소스입니다.
사용 Google 문서 도구 일괄 PDF 변환기 등 으로 미트 아가 왈
하드 드라이브에 Adobe Acrobat과 같은 상용 소프트웨어에 투자하지 않고 한 번에 PDF로 변환하려는 Word 문서, Excel 스프레드 시트 및 PowerPoint 프레젠테이션이 방대한 경우 Google 문서를 사용해보십시오.
Google 문서를 사용하여 Office 문서를 항상 PDF로 변환 할 수 있었지만 새로운 내보내기 기능을 사용하면 Microsoft Office 및 OpenOffice 파일 형식을 3 단계로 쉽게 일괄 변환 할 수 있습니다. Google 문서를 사용하여 PDF로 일괄 변환
Google 문서를 일괄 PDF 변환기로 사용
1 단계 -Google 문서 도구에서 PDF로 변환 할 모든 문서 및 프리젠 테이션을 업로드 할 새 "입력"폴더를 만듭니다.
2 단계 -이제 Google 문서 도구에서 문서 업로드 옵션을 선택하고 1 단계에서 만든 폴더로 대상 폴더를 설정하고 모든 문서를 업로드 *하십시오.
Google 문서 도구는 공식적으로 다음 파일 형식을 지원하지만 이미지를 업로드 할 수도 있습니다.
* Microsoft PowerPoint (.ppt, .pps).
* Microsoft Word (.doc, .docx), OpenDocument (.odt) and StarOffice (.sxw).
* Microsoft Excel (csv, .xls, .xlsx) files and OpenDocument Spreadsheet (.ods).
[*] 이메일 옵션을 사용하여 Google 문서 도구에 문서를 업로드 할 수도 있지만, 파일이 너무 많을 경우 기본 폴더에 모든 항목이 저장되므로 문서 관리가 문제가 될 수 있습니다.
3 단계 -모든 파일이 Google 문서 도구에 업로드되면 대시 보드를 다시 열고 오른쪽 사이드 바에서 "입력"폴더를 선택하십시오. 이 폴더의 모든 파일을 선택하고 "추가 옵션"에서 "내보내기"를 선택하십시오.
출력 형식으로 "PDF"(또는 HTML)를 선택하면 모든 Word 문서, 프레젠테이션, 스프레드 시트 등이 즉시 PDF로 변환됩니다.
대량의 문서를 PDF로 변환하는 경우 처리가 완료되면 Google 문서 도구에서 자동으로 이메일을 보내므로 브라우저에서 변환이 완료 될 때까지 기다릴 필요가 없습니다. 이메일에는 하나의 큰 ZIP으로 모든 PDF 파일을 직접 다운로드 할 수있는 링크가 있습니다.
Bobbymcr의 답변은 꽤 흥미롭고 Word 2010과 잘 작동합니다. 여전히 개선해야 할 부분이 있습니다. Bobbymcr의 원래 명령 줄은 다음과 같습니다.
cscript.exe //nologo SaveAsPDF.js SomeFolder\MyDocToConvert.doc
메모장 ++와 같은 일종의 편집기와 .js 파일을 연결하면 작동하지 않습니다. 이 경우 사용할 엔진도 지정해야합니다. 그렇지 않으면 cscript에 오류 메시지가 표시됩니다. 이것은 //E:jscript
명령 행 매개 변수를 사용하여 쉽게 달성됩니다 .
cscript.exe //nologo //E:jscript SaveAsPDF.js SomeFolder\MyDocToConvert.doc
이전 사용자가 게시 한 SaveAsPDF.js 스크립트와 관련하여 이것은 하나의 pdf 파일을 변환하는 데 효과적이지만 디렉토리의 모든 파일을 숨기는 방법을 몰랐습니다. 조금 연주하면서 파일을 만들었습니다. 다음 두 줄이있는 CovertAll2PDF.bat :
echo off
for %%X in (*.doc) do cscript.exe //nologo SaveAsPDF.js "%%X"
또한 모든 디렉토리를 통과 /r "Parent Directory"
할 파일을 삽입 할 수 있습니다 /r "PD" %%X in -....
.이 경우 C : \ SaveAsPDF.js로 만들고 해당 디렉토리에 Saveaspdf.js를 저장하십시오.
나는 서투른 확신하지만 그것은 나를 위해 일했다. 이것이 누군가를 돕기를 바랍니다.
나는 그것을 시도하지 않았지만 OpenOffice.org를 사용하여 테스트 할 수있는 배치 방법이 있습니다. GNU / Linux 및 Windows 플랫폼에서이 작업을 수행하기위한 지침http://www.tech-faq.com/convert-word-to-pdf.shtml (및http://www.togaware.com/linux/survivor/Convert_MS_Word.html "및http://www.oooforum.org/forum/viewtopic.phtml?t=3772 ).
OpenOffice.org를 사용하여 .doc 파일을 읽은 다음 PDF로 내보내는 원리는 OpenOffice.org에서 .doc 파일을 여는 데 도움이되는 작업 인 경우에 알 맞습니다.
이 작은 발췌 문장은 저에게 매우 효과적이었습니다.
파일 수 제한 없음
$Word=New-Object -ComObject Word.Application
$Files=Get-ChildItem ".\*.docx"
ForEach ($File In $Files) {
$Document=$Word.Documents.Open($File.FullName)
$Name=($Document.FullName).Replace("docx", "pdf")
$Document.SaveAs([ref] $Name, [ref] 17)
$Document.Close()
}
$Word.Close()
PowerShell 스크립트에 저장 Convert-Documents.ps1
한 다음 모든 원본 문서가있는 폴더 내 명령 줄에서 실행하면됩니다.
free
및 처리 할 수 있습니다 unlimited
파일의 수. 따라서 편집을 롤백했지만 편집에 제안 된 구문 수정을 통합했습니다.
[ref]
명령과 마지막 줄 ( $Word.Close()
)을 제거 했을 때 Windows 7에서 저에게 효과적이었습니다. 그렇지 않으면 오류가 나타납니다.
JODConverter 및 Open Office를 사용하여 Windows XP에서 DOC에서 PDF로 여러 문서 변환
전제 조건 :
1 단계 JODConverter (최신 버전 jodconverter-2.2.2.zip)를 다운로드하십시오.
선택한 디렉토리 (D1)에서 JODConverter zip 파일을 압축 해제하십시오
2 단계 서비스 모드에서 OpenOffice를 시작합니다 (자세한 내용은 여기 참조 ).
다음 내용으로 배치 파일 start-service.bat를 작성하십시오.
start-service.bat :
X:\Program Files\OpenOffice.org 3\program\soffice.exe -headless
-accept="socket,host=127.0.0.1,port=8100;urp;" –nofirststartwizard
:: 작동하지 않으면이 마지막 매개 변수를 제거하십시오 (–nofirststartwizard)
X : \ Program Files \ OpenOffice.org 3 \는 Open Office가 설치되어 있고 soffice.exe가있는 디렉토리라고 가정합니다.
start-service.bat를 실행하십시오 (오픈 오피스는 이제 서비스 모드에서 시작되고 명령을 기다리고 있습니다).
3 단계
디렉토리 (D2)에서 pdf로 변환 할 모든 문서를 수집하십시오.
배치 파일 convert.doc를 작성하여 JODConverter를 시작하고 변환 지시 사항을 발행하십시오.
convert.bat :
java -jar "<D1>\lib\jodconverter-cli-2.2.2.jar" -f pdf *.doc
여기서 D1은 1 단계 에서 작성된 JODConverter 디렉토리입니다.
(JODConverter에 다른 버전 번호가 있으면 그에 따라 convert.bat를 업데이트하십시오)
중요 : convert.bat 파일은 D2 디렉토리에 있어야합니다!
4 단계 :
convert.bat를 실행하십시오.
D2에있는 각 * .doc 파일에 대해 JODConverter는 Open Office가 동일한 디렉토리에 동일한 이름 및 pdf 확장자를 가진 새 파일을 작성하도록 요구합니다.
Word 문서가 단순하고 PDF 문서에 Word 문서 형식이 필요하지 않은 경우 DOCXtoPDF 프로그램의 핵심 코드 주위에 간단한 루프를 사용하여 원하는 작업을 수행 할 수 있습니다. DOCXtoPDF는 내부적으로 다른 많은 형식의 PDF 작성을위한 Python 툴킷 인 xtopdf를 사용합니다. ReportLab 1.21도 설치해야합니다.
만나다:
http://jugad2.blogspot.in/2013/10/convert-microsoft-word-files-to-pdf.html
http://slid.es/vasudevram/xtopdf
20 개 이하의 파일에 대해 빠르고 간단한 온라인 방법을 원한다면 이 웹 사이트 online2pdf 를 사용 하십시오. 여기에서 파일을 업로드하고 몇 가지 옵션을 선택한 다음 변환을 클릭하면 모든 문서가 변환 된 다음 자동으로 단일 zip 파일을 다운로드합니다 PDF 파일.
Umar의 답변을 바탕으로 다음과 같은 수정 된 PowerShell 스크립트가 있습니다.
Umar와 마찬가지로 이것을 사용하려면 :
doc2pdf.ps1
어딘가에 당신의PATH
powershell doc2pdf.ps1
$Word=New-Object -ComObject Word.Application
$Files=@(Get-ChildItem ".\*.docx") + @(Get-ChildItem ".\*.doc")
# Need @() to get an array in case there is only one file - see
# https://blogs.technet.microsoft.com/heyscriptingguy/2013/07/18/powertip-find-number-elements-in-a-powershell-array/#comment-104863
for($file_idx = 0; $file_idx -lt $Files.Count; ++$file_idx) {
# Show the current progress
$File = $Files[$file_idx]
Write-Progress -Activity "Convert DOC(X) to PDF" `
-CurrentOperation $File.Name `
-PercentComplete (($file_idx/$Files.Count)*100)
# Make the PDF
$Document=$Word.Documents.Open($File.FullName)
$Name=($Document.FullName -replace "\.docx?", ".pdf") # -replace is case-insensitive regex per https://ss64.com/ps/syntax-regex.html
$Document.SaveAs([ref] $Name, [ref] 17)
$Document.Close()
}
# Clean up
$Word.Quit() # Doesn't close other Word instance that may be running.
# Remove any dangling references, per https://technet.microsoft.com/en-us/library/ff730962.aspx
[System.Runtime.Interopservices.Marshal]::ReleaseComObject($Word)
Remove-Variable Word
# By cxw - https://superuser.com/users/269989/cxw - CC-BY-SA 3.0
# Modified from https://superuser.com/a/1187598/269989 by https://superuser.com/users/12797/umar-farooq-khawaja
Word 2013 및 PowerShell 4.0으로 테스트되었습니다.