Converti in batch documenti Word in PDF


Risposte:


24

Ecco come lo farei:

  1. Scarica lo scrittore CutePDF
  2. Imposta lo scrittore come stampante predefinita (puoi cambiarlo più tardi)
  3. Inserisci tutti i tuoi file .doc nella stessa cartella
  4. Evidenzia tutti i file, fai clic con il pulsante destro del mouse, Stampa

L'unico inconveniente è che devi fare clic su OK una volta per ogni file.


3
Questo è quello che ho effettivamente fatto. Ho dovuto farlo in modo un po 'diverso però ... Ho aperto la "Stampante" CutePDF dal pannello di controllo, quindi ha mostrato quale sarebbe stata la coda della stampante ... Poi ho trascinato e lasciato cadere i documenti in quella finestra - e poi era tutto martellato su ENTER per accettare il nome del file da lì ... Erano tutti chiamati MICROSOFT WORD - [nome file] .pdf, ma posso risolverlo facilmente.
Kjensen,

Lo stesso flusso di lavoro può essere utilizzato con PDFCreator ( en.pdfforge.org/pdfcreator ). Se lo si installa come un servizio o in modalità automatica, è senza mani tranne per selezionare> stampa.
matt wilkie,

1
Se evidenzio più di 15 file in Windows, l'opzione "Stampa" scompare dal menu contestuale del tasto destro. Ho appena provato il metodo drag n drop, ma 94 file potrebbero essere troppo per questo ...
Spacedman

41

Questo potrebbe spingerlo nel territorio di stackoverflow.com, ma potresti scrivere script di Word 2007 per aprire e salvare un documento come PDF. Ciò richiede Office 2007 e il plug-in "Salva come PDF" di Microsoft.

Salvalo in un file SaveAsPDF.jsed eseguilo dalla riga di comando usando 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();
    }
}

5
Il codice sopra funziona in modo eccellente ma accetta solo un file come argomento. Ero troppo pigro per cercare un modo per filtrare una directory in JScript, quindi ho inventato un modo in Powershell usando il seguente post come ispirazione: stackoverflow.com/questions/181036/… PS E: \ MyDocuments> ls * .doc | % {cscript // nologo E: \ jssrc \ SaveAsPDF.js $ _}
Aniti

@bobbymcr Il link nella risposta è morto. Vedi qui per il SaveAsPDFdownload del plug-in corrente .
Peter Vandivier,

9

beh, cutepdf e pdf99 fanno bene il loro lavoro, ma trovo PDFcreator più accattivante in quanto stampa con una qualità superiore rispetto agli altri due, ha anche più opzioni di configurazione, oltre che open-source.


1
PDFCreator può essere utilizzato come indicato da kjensen sopra, tuttavia, ho voluto sottolineare che nelle opzioni PDFCreator, è possibile abilitare il salvataggio automatico, che salverà automaticamente ogni documento nella directory di tua scelta anche con il nome del file che preferisci . In questo modo non è necessario premere "invio" per verificare che si desidera salvare ciascun file.

6

Utilizza Google Documenti come convertitore PDF batch di Amit Agarwal

Se hai un enorme pacchetto di documenti Word, fogli di calcolo Excel e presentazioni PowerPoint sul tuo disco rigido che desideri convertire in PDF contemporaneamente senza investire in software commerciali come Adobe Acrobat, prova Google Documenti.

Sebbene sia sempre stato possibile convertire i documenti di Office in PDF utilizzando Google Documenti, la nuova funzione di esportazione semplifica ulteriormente la conversione in batch dei formati di file di Microsoft Office e OpenOffice in PDF (o HTML) in tre semplici passaggi. Conversione batch in PDF con Google Documenti

Utilizza Google Documenti come convertitore PDF batch

Passaggio n. 1 : crea una nuova cartella "input" in Google Documenti in cui caricherai tutti i tuoi documenti e presentazioni da convertire in PDF.

Passaggio 2 : ora seleziona l'opzione Carica documento in Google Documenti, imposta la cartella di destinazione su quella creata nel passaggio 1 e carica * tutti i tuoi documenti.

Google Documenti supporta ufficialmente i seguenti formati di file anche se puoi anche caricare immagini:

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

[*] Puoi anche utilizzare l'opzione e-mail per caricare documenti su Google Documenti, ma ciò metterebbe tutto nella cartella principale e la gestione dei documenti può quindi diventare un problema soprattutto quando hai troppi file.

Passaggio n. 3 : una volta caricati tutti i file su Google Documenti, apri di nuovo la dashboard e seleziona la cartella "input" dalla barra laterale destra. Seleziona tutti i file in questa cartella e scegli "Esporta" in "Altre opzioni".

Qui seleziona "PDF" (o HTML) come formato di output e tutti i tuoi documenti Word, presentazioni, fogli di calcolo, ecc. Verranno immediatamente convertiti in PDF.

E se stai convertendo una grande quantità di documenti in PDF, non devi attendere nel browser la fine della conversione poiché Google Documenti ti invierà automaticamente un'email al termine dell'elaborazione. L'email avrà un collegamento da cui è possibile scaricare direttamente tutti i file PDF in un grande ZIP.


1
Preparati a modificare in modo significativo qualsiasi documento che contenga tabelle, immagini, caratteri meno comuni. Non ci ho approfondito ulteriormente, ma ho provato un documento di Word con una carta intestata costruita con una tabella contenente testo e un grafico e utilizzando il carattere Calibri. Il PDF non assomigliava per niente all'originale.
rossmcm

Questo metodo è originario del 2009 e purtroppo sembra essere stato rimosso (i singoli file possono essere esportati in pdf, ma le cartelle no ...)
Joe

6

La risposta di Bobbymcr è piuttosto interessante e funziona bene con Word 2010. Tuttavia, c'è un miglioramento da apportare. La riga di comando originale di Bobbymcr è simile alla seguente:

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

Questo non funziona se hai associato i file .js a un qualche tipo di editor come Notepad ++. In questo caso devi anche specificare il motore da usare, altrimenti cscript ti mostrerà un messaggio di errore. Ciò si ottiene facilmente utilizzando il //E:jscriptparametro della riga di comando:

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


6

Riguardo allo script SaveAsPDF.js pubblicato da un utente precedente. Questo ha funzionato per la conversione di un file pdf, ma non sapevo come convertire tutti i file in una directory. Con un po 'di gioco ho creato un file. CovertAll2PDF.bat con le seguenti 2 righe:

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

c'è anche quello /r "Parent Directory"che può essere inserito e /r "PD" %%X in -....che passerà attraverso tutte le directory, in tal caso rendilo C: \ SaveAsPDF.js e salva Saveaspdf.js in quella directory.

Sono sicuro che è goffo, ma ha funzionato per me. spero che questo aiuti qualcuno.


4

Non l'ho provato ma esiste un metodo batch che utilizza OpenOffice.org che è possibile testare. Istruzioni su come farlo su piattaforme GNU / Linux e Windows descritte inhttp://www.tech-faq.com/convert-word-to-pdf.shtml (e anche ahttp://www.togaware.com/linux/survivor/Convert_MS_Word.html "e, all'indirizzohttp://www.oooforum.org/forum/viewtopic.phtml?t=3772 ).

Il principio dell'utilizzo di OpenOffice.org per leggere il file .doc e quindi esportarlo in formato PDF sembra corretto se si trova OpenOffice.org che rende il lavoro di areeonable di apertura dei file .doc che si possiede.


1
L'uso di OpenOffice.org ti fornirà un sommario cliccabile e così via. Qualsiasi soluzione "Stampa su PDF" non lo farà. Vedi superuser.com/questions/568/how-to-print-documents-to-pdf/…
Arjan

+1 per stampanti virtuali pdf. Sono fantastici, vorrei che fossero disponibili di default su tutti i sistemi operativi.
Manu,

4

Questo piccolo frammento ha funzionato molto bene per me.

  • Gratuito
  • Facile
  • Nessun limite al numero di file

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

Basta salvarlo in uno script di PowerShell come Convert-Documents.ps1e quindi eseguirlo dalla riga di comando all'interno della cartella in cui si trovano tutti i documenti di origine.


C'è stata una modifica fatta da @cxw alla mia risposta, che ha rimosso parti significative della mia risposta, vale a dire il fatto che lo script è freee può elaborare e il unlimitednumero di file. Come tale, ho ripristinato la modifica, ma ho incorporato la correzione della sintassi suggerita nella modifica.
Umar Farooq Khawaja,

Ha funzionato per me in Windows 7 quando ho tolto i [ref]comandi e l'ultima riga ( $Word.Close()). Altrimenti sono comparsi errori.
amato da Gesù, il

0

Conversione di più documenti da DOC in PDF su Windows XP utilizzando JODConverter e Open Office

Prerequisiti:


Passaggio 1 Scaricare JODConverter (ultima versione jodconverter-2.2.2.zip) da

Decomprimi il file zip JODConverter in una directory a tua scelta (D1)


Passaggio 2 Avviare OpenOffice in modalità di servizio (maggiori dettagli qui )

Creare un file batch start-service.bat con il seguente contenuto:

start-service.bat:

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

:: se non funziona prova a rimuovere quest'ultimo parametro (–nofirststartwizard)

(supponendo che X: \ Programmi \ OpenOffice.org 3 \ sia la directory in cui è installato Open Office ed è presente soffice.exe).

Esegui start-service.bat (open office è ora avviato in modalità di servizio e in attesa di comandi)


Passaggio 3

Raccogli tutti i documenti da convertire in pdf in una directory (D2)

Creare un file batch convert.doc che avvii JODConverter ed emettere le istruzioni di conversione:

convert.bat:

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

dove D1 è la directory JODConverter creata nel passaggio 1

(Se JODConverter ha un altro numero di versione, aggiorna convert.bat di conseguenza)

IMPORTANTE: il file convert.bat deve trovarsi nella directory D2!


Step 4:

Esegui convert.bat

Per ogni file * .doc presente in D2 JODConverter richiederà Open Office per creare un nuovo file con lo stesso nome ed estensione pdf nella stessa directory.


0

Se i documenti di Word sono semplici e se non è necessario che la formattazione dei documenti di Word sia presente nei documenti PDF, è possibile utilizzare un semplice ciclo attorno al codice principale dei miei programmi DOCXtoPDF, per fare ciò che si desidera. DOCXtoPDF utilizza internamente xtopdf, il mio toolkit Python per la creazione di PDF da molti altri formati. È inoltre necessario che ReportLab 1.21 sia installato.

Vedere:

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

Se desideri un metodo online rapido e semplice per 20 o meno file, utilizza questo sito Web online2pdf , qui puoi caricare i tuoi file, scegliere alcune opzioni e fare clic su Converti, convertirà tutti i documenti e quindi scaricherà automaticamente un singolo file zip contenente i file PDF.


0

Sulla base della risposta di Umar , ecco uno script PowerShell modificato che:

  • Elaborazione di DOC e DOCX
  • Mostra una barra di avanzamento mentre funziona

Come con Umar, per usare questo:

  • salva lo script seguente come file, ad es doc2pdf.ps1. da qualche parte nel tuoPATH
  • passare alla directory contenente i file doc o docx
  • correre 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

Testato con Word 2013 e PowerShell 4.0.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.