Batch-Konvertierung von Word-Dokumenten in PDFs

Wie konvertiere ich viele Word-Dokumente stapelweise und lasse sie als [originalfilename] speichern.pdf?

Author: Franck Dernoncourt, 2009-08-03

13 answers

So würde ich es machen:

  1. Herunterladen CutePDF writer
  2. Setzen Sie den Writer als Ihren Standarddrucker (Sie können ihn später wieder ändern)
  3. Legen Sie alle Ihre .doc-Dateien im selben Ordner
  4. Markieren Sie alle Dateien, Rechtsklick, Drucken

Der einzige Nachteil ist, dass Sie für jede Datei einmal auf Ok klicken müssen.

 24
Author: Travis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2009-08-03 17:35:13

This might be pushing it into stackoverflow.com ja, aber Sie könnten Word 2007 schreiben, um ein Dokument als PDF zu öffnen und zu speichern. Dies erfordert Office 2007 und das Plug-in "Save as PDF" von Microsoft.

Speichern Sie dies in einer Datei SaveAsPDF.js und führen Sie es über die Befehlszeile mit 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();
    }
}
 41
Author: bobbymcr,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2009-08-23 17:35:01

Nun, cutepdf & pdf99 machen ihre Arbeit gut, aber ich finde PDFCreator attraktiver, da es in höherer Qualität gedruckt wird als die anderen beiden, es hat auch mehr Konfigurationsoptionen und es ist Open Source.

 9
Author: Tutul,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2009-09-18 14:41:34

Verwenden Sie Google Text & Tabellen als Batch-PDF-Konverter by Amit Agarwal

Wenn Sie ein riesiges Bündel von Word-Dokumenten, Excel-Tabellen und PowerPoint-Präsentationen auf Ihrer Festplatte haben, die Sie sofort in PDF konvertieren möchten, ohne in kommerzielle Software wie Adobe Acrobat zu investieren, versuchen Sie es mit Google Docs.

Während es schon immer möglich war, Office-Dokumente mit Google Text & Tabellen in PDF zu konvertieren, erleichtert Ihnen die neue Exportfunktion batch-Konvertierung von Microsoft Office-und OpenOffice-Dateiformaten in PDF (oder HTML) in drei einfachen Schritten. Batch-Konvertierung in PDF mit Google Docs -

Verwenden Sie Google Text & Tabellen als Batch-PDF-Konverter

Schritt #1 - Erstellen Sie einen neuen "Input" - Ordner in Google Docs, in dem Sie alle Ihre Dokumente und Präsentationen hochladen, die in PDF konvertiert werden sollen.

Schritt #2 - Wählen Sie nun die Option Dokument hochladen in Google Text & Tabellen und legen Sie den Zielordner auf den von Ihnen erstellt in Schritt #1 und Upload* alle Ihre Dokumente.

Google Text & Tabellen unterstützt offiziell die folgenden Dateiformate, obwohl Sie auch Bilder hochladen können:

* Microsoft PowerPoint (.ppt, .pps).
* Microsoft Word (.doc, .docx), OpenDocument (.odt) and StarOffice (.sxw).
* Microsoft Excel (csv, .xls, .xlsx) files and OpenDocument Spreadsheet (.ods).

[*] Sie können auch die E-Mail-Option verwenden, um Dokumente in Google Text & Tabellen hochzuladen, aber das würde alles in den Hauptordner legen und das Verwalten von Dokumenten kann daher zu einem Problem werden, insbesondere wenn Sie zu viele Dateien haben.

Schritt #3 - Sobald alle Dateien auf Google Docs hochgeladen sind, öffnen Sie das Dashboard erneut und wählen Sie den Ordner" Eingabe " in der rechten Seitenleiste. Wählen Sie alle Dateien in diesem Ordner aus und wählen Sie "Exportieren" unter "Weitere Optionen".

Hier wählen Sie "PDF" (oder HTML) als Ausgabeformat und alle Ihre Word-Dokumente, Präsentationen, Tabellen usw. wird sofort in PDF konvertiert.

Und wenn Sie einen großen Stapel von Dokumenten in PDF konvertieren, müssen Sie nicht im Browser warten, bis die Konvertierung abgeschlossen ist, da Google Text & Tabellen Ihnen automatisch eine E-Mail sendet, sobald die die Verarbeitung ist vorbei. Die E-Mail enthält einen Link, von dem aus Sie alle PDF-Dateien direkt in einer großen ZIP-Datei herunterladen können.

 6
Author: Adrian,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2011-03-05 13:20:22

Bobbymcr s Antwort ist ziemlich interessant, und funktioniert gut mit Word 2010. Dennoch gibt es eine Verbesserung zu machen. Die ursprüngliche Befehlszeile von Bobbymcr sieht folgendermaßen aus:

cscript.exe //nologo SaveAsPDF.js SomeFolder\MyDocToConvert.doc

Dies funktioniert nicht, wenn Sie zugeordnet haben .js-Dateien mit einer Art Editor wie Notepad++. In diesem Fall müssen Sie auch die zu verwendende Engine angeben, andernfalls zeigt cscript eine Fehlermeldung an. Dies wird leicht mit dem Befehlszeilenparameter //E:jscript erreicht:

cscript.exe //nologo //E:jscript SaveAsPDF.js SomeFolder\MyDocToConvert.doc

 6
Author: JC2k8,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-07-12 06:54:37

In Bezug auf die SaveAsPDF.js-Skript, das ein früherer Benutzer gepostet hat. Dies funktionierte zum Konvertieren einer PDF-Datei, aber ich wusste nicht, wie ich alle Dateien in einem Verzeichnis verdecken sollte. Mit ein wenig spielen, habe ich eine Datei erstellt. CovertAll2PDF.bat mit den folgenden 2 Zeilen:

echo off
for %%X in (*.doc) do cscript.exe //nologo SaveAsPDF.js "%%X"

Es gibt auch das /r "Parent Directory", das wie für /r "PD" %%X in -.... eingefügt werden kann, das alle Verzeichnisse durchläuft, in diesem Fall mach es C:\SaveAsPDF.js und speichern Saveaspdf.js in diesem Verzeichnis.

Ich bin mir sicher, dass seine ungelenke, aber es arbeitete für mich. hoffe, das hilft jemandem.

 6
Author: Fallensoul,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2015-10-06 09:12:29

Ich habe es nicht versucht, aber es gibt eine Batch-Methode mit OpenOffice.org dass du testen könntest. Anweisungen dazu auf GNU/Linux-und Windows-Plattformen unter http://www.tech-faq.com/convert-word-to-pdf.shtml (und auch bei http://www.togaware.com/linux/survivor/Convert_MS_Word.html " und, an http://www.oooforum.org/forum/viewtopic.phtml?t=3772).

Das Prinzip der Verwendung OpenOffice.org zu lesen in der .doc-Datei-und dann exportieren Sie es als PDF scheint Sound, wenn Sie finden OpenOffice.org macht areasonasonable Job der Öffnung der .doc-Dateien, die Sie haben.

 4
Author: mas,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2009-08-03 15:48:31

Dieser kleine Ausschnitt hat sehr gut für mich funktioniert.

  • Frei
  • Einfach
  • Keine Begrenzung der Anzahl der Dateien

    $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()
    

Speichern Sie es einfach in einem PowerShell-Skript wie Convert-Documents.ps1 und führen Sie es dann über die Befehlszeile in dem Ordner aus, in dem sich alle Ihre Quelldokumente befinden.

 4
Author: Umar Farooq Khawaja,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-08-31 16:33:59

Eine etwas einfachere Alternative zu den obigen Powershell -, Batch-und Windows Script-Hostskripten ist das Tool docx2pdf, das sowohl unter Windows als auch unter macOS funktioniert: https://github.com/AlJohri/docx2pdf/

Ähnlich wie bei anderen Antworten, dieser Ansatz verwendet win32com in Windows und JXA (Javscript für die Automatisierung, im Grunde AppleScript in JS) in macOS. Es ist jedoch in ein leicht installierbares und stapelfertiges Konvertierungspaket mit einem Fortschritt verpackt Bar.

Installieren:

pip install docx2pdf

Lauf:

docx2pdf myFolderOfWordDocs

Haftungsausschluss: Ich habe dieses Tool geschrieben, nachdem ich Schwierigkeiten hatte, eine plattformübergreifende Lösung für die Stapelkonvertierung von docx in PDF ohne Formatierungsprobleme zu finden, da es direkt Microsoft Word verwendet.

 1
Author: Al Johri,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2020-02-18 06:58:57

Konvertieren mehrerer Dokumente von DOC in PDF unter Windows XP mit JODConverter und Open Office

Voraussetzungen:


Schritt-1 - Download JODConverter (neueste version jodconverter-2.2.2.zip) von

Entpacken JODConverter ZIP-Datei in einem Verzeichnis Ihrer Wahl (D1)


Schritt 2 - Starten Sie OpenOffice im Servicemodus (weitere Details hier)

Erstellen Sie eine batch-Datei starten-Dienst.bat mit folgendem Inhalt:

-Start-service.bat:

X:\Program Files\OpenOffice.org 3\program\soffice.exe -headless
-accept="socket,host=127.0.0.1,port=8100;urp;" –nofirststartwizard

::wenn nicht funktioniert, versuchen Sie, diese letzten parameter(–nofirststartwizard)

(vorausgesetzt X:\Program Files\OpenOffice.org 3\ ist das Verzeichnis, in dem Open Office installiert ist und soffice.exe vorhanden ist).

Start-Service ausführen.bat (open office wird jetzt im Servicemodus gestartet und wartet Befehle)


Schritt 3

Sammeln Sie alle zu konvertierenden Dokumente in einem Verzeichnis (D2)

Erstellen Sie eine batch-Datei umwandeln.doc, das JODConverter startet und die Konvertierungsanweisungen ausgibt:

Konvertieren.bat:

java -jar  "<D1>\lib\jodconverter-cli-2.2.2.jar" -f pdf  *.doc

Wobei D1 das JODConverter-Verzeichnis ist, das in Schritt 1

(Wenn JODConverter eine andere Versionsnummer hat, aktualisieren Sie convert.bat entsprechend)

WICHTIG: konvertieren.bat-Datei muss sich in D2 verzeichnis !


Schritt 4:

Führen Sie konvertieren.BVT

Für jede *.doc-Datei in D2 JODConverter vorhanden ist, erfordert Open Office eine neue Datei mit dem gleichen Namen und PDF-Erweiterung im selben Verzeichnis zu erstellen.

 0
Author: Adrian,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-02-22 02:20:51

Wenn die Word-Dokumente einfach sind und die Formatierung der Word-Dokumente nicht in den PDF-Dokumenten vorhanden sein muss, können Sie eine einfache Schleife um den Kerncode meiner DOCXtoPDF-Programme verwenden, um das zu tun, was Sie wollen. DOCXtoPDF verwendet intern xtopdf, mein Python-Toolkit zur PDF-Erstellung aus vielen anderen Formaten. Sie benötigen auch ReportLab 1.21 installiert.

Unter:

Http://jugad2.blogspot.in/2013/10/convert-microsoft-word-files-to-pdf.html

Http://slid.es/vasudevram/xtopdf

Https://bitbucket.org/vasudevram/xtopdf

Http://www.reportlab.com/ftp

 0
Author: Vasudev Ram,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2015-01-29 19:14:05

Wenn Sie eine schnelle und einfache Online-Methode für 20 oder weniger Dateien möchten, dann verwenden Sie diese Website online2pdf, hier können Sie Ihre Dateien hochladen, einige Optionen auswählen und dann auf Konvertieren klicken.

 0
Author: Ghos3t,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2016-06-17 07:00:01

Aufbauend auf Umars Antwort, hier ist ein modifiziertes PowerShell-Skript, das:

  • Prozess DOC sowie DOCX
  • Zeigt einen Fortschrittsbalken an, wie er funktioniert

Wie bei Umar ' s, um dies zu verwenden:

  • Speichern Sie das folgende Skript als Datei, z. B. doc2pdf.ps1, irgendwo in Ihrem PATH
  • wechseln Sie in das Verzeichnis, das Ihre doc-oder docx-Dateien enthält
  • Lauf 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

Getestet mit Word 2013 und PowerShell 4.0.

 0
Author: cxw,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-08-31 14:33:32