回答:
これは私がそれをする方法です:
唯一の欠点は、ファイルごとに[ OK ]を1回クリックする必要があることです。
これにより、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 は他の2つよりも高品質で印刷できるため、より多くの構成オプションがあり、オープンソースであるため、PDFcreatorの方が魅力的です。
Amit Agarwalに よる GoogleドキュメントをバッチPDFコンバーターとして使用する
ハードドライブに大量のWord文書、Excelスプレッドシート、PowerPointプレゼンテーションがあり、Adobe Acrobatなどの商用ソフトウェアに投資せずに一度にPDFに変換したい場合は、Google Docsを試してください。
Googleドキュメントを使用してOfficeドキュメントをPDFに変換することは常に可能ですが、新しいエクスポート機能により、Microsoft OfficeおよびOpenOfficeファイル形式を3つの簡単なステップでPDF(またはHTML)にバッチ変換することがさらに簡単になります。Googleドキュメントを使用したPDFへのバッチ変換
GoogleドキュメントをバッチPDFコンバーターとして使用する
ステップ#1 -Googleドキュメントに新しい「入力」フォルダーを作成し、PDFに変換するすべてのドキュメントとプレゼンテーションをアップロードします。
ステップ#2 -Googleドキュメントで[ドキュメントのアップロード]オプションを選択し、保存先フォルダーをステップ#1で作成したフォルダーに設定し、すべてのドキュメントをアップロード*します。
Google Docsは次のファイル形式を公式にサポートしていますが、画像をアップロードすることもできます。
* 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ドキュメントが自動的にメールを送信するため、変換が完了するまでブラウザで待つ必要はありません。メールには、すべてのPDFファイルを1つの大きなZIPで直接ダウンロードできるリンクがあります。
Bobbymcrの答えは非常に興味深いものであり、Word 2010でうまく機能します。それでも、改善すべき点があります。Bobbymcrの元のコマンドラインは次のようになります。
cscript.exe //nologo SaveAsPDF.js SomeFolder\MyDocToConvert.doc
.jsファイルをNotepad ++などのエディターに関連付けている場合、これは機能しません。この場合、使用するエンジンも指定する必要があります。指定しない場合、cscriptはエラーメッセージを表示します。これは、//E:jscript
コマンドラインパラメータを使用して簡単に実現できます。
cscript.exe //nologo //E:jscript SaveAsPDF.js SomeFolder\MyDocToConvert.doc
前のユーザーが投稿したSaveAsPDF.jsスクリプトについて。これは1つのpdfファイルを変換するために機能しましたが、ディレクトリ内のすべてのファイルを変換する方法を知りませんでした。少し遊んで、ファイルを作成しました。次の2行の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)からダウンロードします
選択したディレクトリでJODConverter zipファイルを解凍します(D1)
ステップ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
:: ifが機能しない場合、この最後のパラメーターを削除してみてください(–nofirststartwizard)
(X:\ Program Files \ OpenOffice.org 3 \がOpen Officeがインストールされ、soffice.exeが存在するディレクトリであると仮定します)。
start-service.batを実行します(現在、オープンオフィスはサービスモードで開始され、コマンドを待機しています)
ステップ3
ディレクトリにあるPDFに変換するすべてのドキュメントを収集します(D2)
JODConverterを起動するバッチファイルconvert.docを作成し、変換指示を発行します。
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文書が単純で、Word文書の書式設定をPDF文書に含める必要がない場合、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以下のファイルをすばやく簡単にオンラインで作成する方法が必要な場合は、このWebサイトonline2pdfを使用します。ここでファイルをアップロードし、オプションを選択して[変換]をクリックします。すべてのドキュメントを変換し、 PDFファイル。
オフ構築ウマルの答え、ここでその意志修正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でテスト済み。