Réponses:
Voici comment je le ferais:
Seul inconvénient est que vous devez cliquer sur OK une fois pour chaque fichier.
Il se peut que cela se répande sur le territoire de stackoverflow.com, mais vous pouvez également utiliser un script Word 2007 pour ouvrir et enregistrer un document au format PDF. Cela nécessite Office 2007 et le plug-in "Enregistrer au format PDF" de Microsoft.
Enregistrez ceci dans un fichier SaveAsPDF.js
et exécutez-le à partir de la ligne de commande en utilisant 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();
}
}
SaveAsPDF
téléchargement actuel du plugin.
Bien, cutepdf & pdf99 font bien leur travail, mais je trouve que PDFcreator est plus attrayant car son impression est de meilleure qualité que les deux autres.
Utiliser Google Docs en tant que convertisseur PDF par lots par Amit Agarwal
Si vous avez un grand nombre de documents Word, de feuilles de calcul Excel et de présentations PowerPoint sur votre disque dur que vous souhaitez convertir au format PDF en même temps sans investir dans un logiciel commercial comme Adobe Acrobat, essayez Google Docs.
Bien qu'il ait toujours été possible de convertir des documents Office au format PDF à l'aide de Google Documents, la nouvelle fonctionnalité d'exportation facilite encore davantage la conversion par lots des formats de fichiers Microsoft Office et OpenOffice au format PDF (ou HTML) en trois étapes simples. Conversion par lots en PDF avec Google Docs
Utiliser Google Docs en tant que convertisseur de PDF par lots
Étape n ° 1 - Créez un nouveau dossier "de saisie" dans Google Documents où vous téléchargerez tous vos documents et présentations à convertir au format PDF.
Étape 2 - Sélectionnez maintenant l'option Télécharger le document dans Google Documents, définissez le dossier de destination sur celui que vous avez créé à l'étape 1 et téléchargez * tous vos documents.
Google Docs prend officiellement en charge les formats de fichiers suivants, mais vous pouvez également télécharger des images:
* Microsoft PowerPoint (.ppt, .pps).
* Microsoft Word (.doc, .docx), OpenDocument (.odt) and StarOffice (.sxw).
* Microsoft Excel (csv, .xls, .xlsx) files and OpenDocument Spreadsheet (.ods).
[*] Vous pouvez également utiliser l'option de courrier électronique pour télécharger des documents sur Google Docs, mais cela placerait tout dans le dossier principal et la gestion des documents pourrait donc devenir un problème, notamment lorsque vous avez trop de fichiers.
Étape 3 - Une fois tous les fichiers chargés sur Google Documents, ouvrez à nouveau le tableau de bord et sélectionnez le dossier "Entrée" dans la barre latérale droite. Sélectionnez tous les fichiers de ce dossier et choisissez "Exporter" sous "Autres options".
Sélectionnez ici le format de sortie "PDF" (ou HTML) et tous vos documents Word, présentations, feuilles de calcul, etc. seront instantanément convertis en PDF.
Et si vous convertissez un grand nombre de documents au format PDF, vous n'avez pas à attendre dans le navigateur que la conversion soit terminée, car Google Documents vous enverra automatiquement un e-mail une fois le traitement terminé. L'e-mail comportera un lien permettant de télécharger directement tous les fichiers PDF dans un grand fichier ZIP.
La réponse de Bobbymcr est assez intéressante et fonctionne bien avec Word 2010. Néanmoins, il y a une amélioration à apporter. La ligne de commande originale de Bobbymcr ressemble à ceci:
cscript.exe //nologo SaveAsPDF.js SomeFolder\MyDocToConvert.doc
Cela ne fonctionne pas si vous avez associé des fichiers .js à un type d’éditeur tel que Notepad ++. Dans ce cas, vous devez également spécifier le moteur à utiliser, sinon cscript vous affichera un message d'erreur. Ceci est facilement réalisé en utilisant le //E:jscript
paramètre de ligne de commande:
cscript.exe //nologo //E:jscript SaveAsPDF.js SomeFolder\MyDocToConvert.doc
En ce qui concerne le script SaveAsPDF.js envoyé par un utilisateur précédent. Cela a fonctionné pour convertir un fichier pdf, mais je ne savais pas comment convertir tous les fichiers d'un répertoire. En jouant un peu, j'ai créé un fichier. CovertAll2PDF.bat avec les 2 lignes suivantes:
echo off
for %%X in (*.doc) do cscript.exe //nologo SaveAsPDF.js "%%X"
il y a aussi le /r "Parent Directory"
qui peut être inséré car /r "PD" %%X in -....
qui passera par tous les répertoires, dans ce cas, faites-le C: \ SaveAsPDF.js et enregistrez Saveaspdf.js dans ce répertoire.
Je suis sûr que c'est maladroit, mais ça a fonctionné pour moi. espérons que cela aide quelqu'un.
Je ne l'ai pas essayé, mais il existe une méthode de traitement par lots utilisant OpenOffice.org que vous pouvez tester. Les instructions pour le faire sur les plateformes GNU / Linux et Windows décrites à lahttp://www.tech-faq.com/convert-word-to-pdf.shtml (et aussi àhttp://www.togaware.com/linux/survivor/Convert_MS_Word.html "et, àhttp://www.oooforum.org/forum/viewtopic.phtml?t=3772 ).
Le principe consistant à utiliser OpenOffice.org pour lire le fichier .doc, puis l'exporter au format PDF, semble judicieux si vous trouvez qu'OpenOffice.org facilite raisonnablement l'ouverture de vos fichiers .doc.
Ce petit extrait a très bien fonctionné pour moi.
Aucune limite sur le nombre de fichiers
$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()
Enregistrez-le simplement dans un script PowerShell Convert-Documents.ps1
, puis exécutez-le à partir de la ligne de commande à partir du dossier contenant tous vos documents source.
free
et peut traiter et le unlimited
nombre de fichiers. En tant que tel, j'ai annulé l'édition, mais j'ai incorporé le correctif de syntaxe suggéré dans l'édition.
[ref]
commandes et la dernière ligne ( $Word.Close()
). Sinon, des erreurs sont apparues.
Conversion de plusieurs documents DOC en PDF sous Windows XP à l'aide de JODConverter et Open Office
Conditions préalables:
Étape 1 Téléchargez JODConverter (la dernière version, jodconverter-2.2.2.zip) à partir de
Décompressez le fichier zip JODConverter dans un répertoire de votre choix (D1)
Étape 2 Démarrez OpenOffice en mode service (plus de détails ici )
Créez un fichier batch start-service.bat avec le contenu suivant:
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 ne fonctionne pas, essayez de supprimer ce dernier paramètre (–nofirststartwizard)
(en supposant que X: \ Program Files \ OpenOffice.org 3 \ est le répertoire où Open Office est installé et où soffice.exe est présent).
Exécutez start-service.bat (Open Office est maintenant démarré en mode service et en attente de commandes)
Étape 3
Rassemblez tous les documents à convertir en pdf dans un répertoire (D2)
Créez un fichier batch convert.doc qui lance JODConverter avec et émettez les instructions de conversion:
convert.bat:
java -jar "<D1>\lib\jodconverter-cli-2.2.2.jar" -f pdf *.doc
où D1 est le répertoire JODConverter créé à l' étape 1
(Si JODConverter a un autre numéro de version, mettez à jour convert.bat en conséquence)
IMPORTANT: le fichier convert.bat doit se trouver dans le répertoire D2!
Étape 4:
Exécutez convert.bat
Pour chaque fichier * .doc présent dans D2, JODConverter nécessitera qu'Open Office crée un nouveau fichier portant le même nom et la même extension pdf dans le même répertoire.
Si les documents Word sont simples et si vous n'avez pas besoin que le formatage de ces derniers soit présent dans les documents PDF, vous pouvez utiliser une simple boucle autour du code principal de mes programmes DOCXtoPDF pour faire ce que vous voulez. DOCXtoPDF utilise en interne xtopdf, ma boîte à outils Python pour la création de PDF à partir de nombreux autres formats. ReportLab 1.21 doit également être installé.
Voir:
http://jugad2.blogspot.in/2013/10/convert-microsoft-word-files-to-pdf.html
http://slid.es/vasudevram/xtopdf
Si vous souhaitez une méthode en ligne simple et rapide pour 20 fichiers ou moins, utilisez ce site Web online2pdf . Vous pouvez ici télécharger vos fichiers, choisir quelques options, cliquer sur convertir. Tous les documents seront convertis, puis un fichier zip unique sera automatiquement téléchargé. les fichiers PDF.
S'appuyant sur la réponse d' Umar , voici un script PowerShell modifié qui va:
Comme avec Umar, pour utiliser ceci:
doc2pdf.ps1
quelque part dans votrePATH
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
Testé avec Word 2013 et PowerShell 4.0.