2009-08-03 13:53:21 +0000 2009-08-03 13:53:21 +0000
36
36
Advertisement

Convertire in batch i documenti Word in PDF

Advertisement

Come posso convertire in batch molti documenti Word e farli salvare come [originalfilename].pdf?

Advertisement
Advertisement

Risposte (13)

41
41
41
2009-08-23 17:35:01 +0000

Questo potrebbe essere una spinta nel territorio di stackoverflow.com, ma si potrebbe scrivere uno script per Word 2007 per aprire e salvare un documento come PDF. Questo richiede Office 2007 e il plug-in “Save as PDF” di Microsoft.

Salvatelo in un file SaveAsPDF.js ed eseguitelo dalla linea 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();
    }
}
24
24
24
2009-08-03 17:35:13 +0000

Ecco come farei io:

  1. Scarica CutePDF writer
  2. Imposta lo scrittore come tua stampante predefinita (puoi cambiarla di nuovo in seguito)
  3. Metti tutti i tuoi file .doc nella stessa cartella
  4. Evidenzia tutti i file, clicca con il tasto destro, Stampa

L'unico svantaggio è che devi cliccare Ok una volta per ogni file.

9
Advertisement
9
9
2009-09-18 14:41:34 +0000
Advertisement

beh, cutepdf & pdf99 fanno bene il loro lavoro, ma trovo PDFcreator più attraente in quanto ‘stampa in qualità superiore rispetto agli altri due, ha anche più opzioni di configurazione, in più è open-source.

6
6
6
2011-03-05 13:20:22 +0000

Usa Google Docs come convertitore PDF in batch by Amit Agarwal

Se hai un enorme mucchio di documenti Word, fogli di calcolo Excel e presentazioni PowerPoint sul tuo disco rigido che vorresti convertire in PDF in una volta sola senza investire in software commerciale come Adobe Acrobat, prova Google Docs.

Mentre è sempre stato possibile convertire i documenti di Office in PDF utilizzando Google Docs, la nuova funzione di esportazione rende ancora più facile per voi di convertire in batch i formati di file Microsoft Office e OpenOffice in PDF (o HTML) in tre semplici passi. Conversione in batch in PDF con Google Docs

Utilizza Google Docs come convertitore PDF in batch

Step #1 - Crea una nuova cartella “input” in Google Docs dove caricherai tutti i tuoi documenti e presentazioni da convertire in PDF.

Step #2 - Ora seleziona l'opzione Carica documento in Google Docs, imposta la cartella di destinazione su quella che hai creato nel passo #1 e carica tutti i tuoi documenti.

Google Docs supporta ufficialmente i seguenti formati di file, sebbene tu possa 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 usare l'opzione e-mail per caricare i documenti su Google Docs ma questo metterebbe tutto nella cartella principale e la gestione dei documenti può quindi diventare un problema soprattutto quando hai troppi file.

Step #3 - Una volta che tutti i file sono stati caricati su Google Docs, apri di nuovo la dashboard e seleziona la cartella “input” dalla barra laterale destra. Seleziona tutti i file in questa cartella e scegli “Export” sotto “More Options”.

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

E se stai convertendo un grande lotto di documenti in PDF, non devi aspettare nel browser che la conversione finisca perché Google Docs ti invierà automaticamente un'e-mail una volta che l'elaborazione è finita. L'e-mail avrà un link da dove potrete scaricare direttamente tutti i file PDF in un unico grande ZIP.

6
Advertisement
6
6
2010-06-04 09:06:35 +0000
Advertisement

Per quanto riguarda lo script SaveAsPDF.js che un utente precedente ha postato. Questo ha funzionato per convertire 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 linee:

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

c'è anche lo /r "Parent Directory" che può essere inserito come per /r "PD" %%X in -.... che passerà attraverso tutte le directory, in questo caso fare C:\SaveAsPDF.js e salvare Saveaspdf.js in quella directory.

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

6
6
6
2012-07-12 06:54:37 +0000

La risposta di Bobbymcr è piuttosto interessante e funziona bene con Word 2010. Tuttavia, c'è un miglioramento da fare. La linea di comando originale di Bobbymcr assomiglia a questa:

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

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

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

4
Advertisement
4
4
2017-03-11 11:06:12 +0000
Advertisement

Questo piccolo snippet ha funzionato molto bene per me.

  • Gratis
  • Facile
  • Nessun limite sul numero di file

Basta salvarlo in uno script PowerShell come Convert-Documents.ps1 e poi eseguirlo dalla riga di comando all'interno della cartella dove si trovano tutti i tuoi documenti di origine.

4
4
4
2009-08-03 14:32:28 +0000

Non l'ho provato, ma c'è un metodo batch usando OpenOffice.org che potresti provare. Le istruzioni per farlo su piattaforme GNU/Linux e Windows sono descritte a http://www.tech-faq.com/convert-word-to-pdf.shtml (e anche a http://www.togaware.com/linux/survivor/Convert_MS_Word.html “ e, a http://www.oooforum.org/forum/viewtopic.phtml?t=3772 ).

Il principio di usare OpenOffice.org per leggere il file .doc e poi esportarlo come PDF sembra valido se trovi che OpenOffice.org faccia un lavoro ragionevole nell'aprire i file .doc che hai.

1
Advertisement
1
1
2020-02-18 06:58:57 +0000
Advertisement

Un'alternativa leggermente più semplice rispetto agli script Powershell, Batch e Windows Script Host di cui sopra è lo strumento docx2pdf che funziona sia su Windows che su MacOS: https://github.com/AlJohri/docx2pdf/

Simile alle altre risposte, questo approccio usa win32com in Windows e JXA (Javscript for Automation, fondamentalmente AppleScript in JS) in macOS. Tuttavia, è confezionato in un pacchetto facilmente installabile e pronto per la conversione in batch con una barra di progresso.

Installa:

pip install docx2pdf

Run:

docx2pdf myFolderOfWordDocs

Disclaimer: Ho scritto questo strumento dopo aver lottato per trovare una soluzione multipiattaforma per convertire in batch docx in pdf con zero problemi di formattazione dato che usa direttamente Microsoft Word.

0
0
0
2011-03-05 14:38:31 +0000

Conversione di più documenti da DOC a PDF su Windows XP usando JODConverter e Open Office

Prerequisiti:

Step 1 Scarica JODConverter (ultima versione jodconverter-2. 2.2.zip) da

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


Step 2 Avvia OpenOffice in modalità servizio (maggiori dettagli qui )

Crea 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)

(assumendo che X:\Program FilesOpenOffice.org 3\ sia la directory dove Open Office è installato e soffice.exe sia presente).

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


Step 3

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

Crea un file batch convert.doc che lancia JODConverter con ed emette le istruzioni di conversione:

convert.bat:

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

dove D1 è la directory di JODConverter creata nel Passo 1

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

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


Step 4:

Run convert.bat

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

0
0
0
2016-06-17 07:00:01 +0000

Se vuoi un metodo online semplice e veloce per 20 file o meno, allora usa questo sito online2pdf , qui puoi caricare i tuoi file, scegliere alcune opzioni e poi cliccare su converti, convertirà tutti i documenti e poi scaricherà automaticamente un singolo file zip contenente i file PDF.

0
0
0
2015-01-29 19:14:05 +0000

Se i documenti Word sono semplici e se non avete bisogno che la formattazione dei documenti Word sia presente nei documenti PDF, potete usare un semplice ciclo intorno al codice di base dei miei programmi DOCXtoPDF, per fare ciò che volete. DOCXtoPDF usa internamente xtopdf, il mio toolkit Python per la creazione di PDF da molti altri formati. Ti serve anche ReportLab 1.21 installato.

Vedi: 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
0
0
2017-08-31 14:33:32 +0000

Basandosi sulla risposta di Umar , ecco uno script PowerShell modificato che:

  • Elabora sia DOC che DOCX
  • Mostra una barra di avanzamento mentre lavora

Come per quello di Umar, per usarlo:

  • salvate il seguente script come file, per esempio, doc2pdf.ps1, da qualche parte nel vostro database

  • passate alla directory che contiene i vostri file doc o docx

  • eseguite PATH

$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.

Advertisement

Domande correlate

19
12
9
13
8
Advertisement