Convertir Word a PDF por Lotes con PowerShell
Convertir Word a PDF por Lotes con PowerShell

PowerShell: Convertir Documentos de Word a PDF por Lotes

Tomar un documento Word y exportarlo como PDF antes de transferirlo por correo electrónico o compartirlo es una operación clásica, incluso diaria. Para uno o dos archivos así, cada día, es difícil hacer otra cosa que no sea hacerlo manualmente.

Pero si te piden que conviertas 50, 100 o incluso 1.000 documentos Word en PDF, ¬Ņc√≥mo vas a hacerlo? Abrirlos uno a uno y exportarlos, no creo‚Ķ Hay varias formas de hacerlo, hay software que te puede ayudar a hacerlo, pero tambi√©n puedes usar PowerShell ¬°y eso mola!

Encontr√© el script ConvertWordTo-PDF para convertir Word a PDF usando PowerShell y ¬°funciona perfectamente! Te invito a descargarlo desde el siguiente enlace: ConvertWordTo-PDF ‚Äď Gracias @Patrick Gruenauer por este script.

A√Īadir ConvertWordTo-PDF al PC

Una vez que hayas descargado el archivo ZIP, puedes a√Īadir el script a tu PC como un m√≥dulo utilizando el archivo .psm1 incluido en el archivo. Crea una carpeta para este m√≥dulo y copia el archivo en ella, lo que da:

C:\Program Files\WindowsPowerShell\Modules\ConvertWordTo-PDF\ConvertWordTo-PDF.psm1
AnŐÉadir ConvertWordTo-PDF a Windows
AnŐÉadir ConvertWordTo-PDF a Windows

Como este archivo viene de Internet, necesitas desbloquearlo usando este comando, que puedes ejecutar como administrador:

Unblock-File "C:\Program Files\WindowsPowerShell\Modules\ConvertWordTo-PDF\ConvertWordTo-PDF.psm1"

A continuación, puedes importar el módulo:

Import-Module ConvertWordTo-PDF
Desbloquear e importar módulo ConvertWordTo-PDF
Desbloquear e importar módulo ConvertWordTo-PDF

Sólo queda ver cómo utilizarlo.

Conversión de Word a PDF por Lotes con PowerShell

El comando ConvertWordTo-PDF se utiliza con dos par√°metros:

  • SourceFolder: la carpeta de origen que contiene todos los documentos Word que se van a convertir.
  • DestinationFolder: la carpeta de destino donde se almacenar√°n todos los archivos PDF generados. Este par√°metro es opcional; si no se especifica, los PDF se crear√°n en la carpeta de origen.

F√°cil de usar. Para convertir todos los documentos Word de la carpeta ‚ÄúC:\TEMP\Word‚ÄĚ en archivos PDF de la carpeta ‚ÄúC:\TEMP\PDF‚Äú, utiliza el siguiente comando:

ConvertWordTo-PDF -SourceFolder "C:\TEMP\WORD\" -DestinationFolder "C:\TEMP\PDF\"

Nota

Cambia la dirección de las carpetas C:\TEMP\Word y C:\TEMP\PDF por la ubicación de la carpeta que contenga los archivos a convertir. Incluso pueden ubicarse en otro disco, como el D.

Todos los documentos DOCX y DOC de esta carpeta se convertir√°n a PDF.

Resultado de conversioŐĀn de Word a PDF por lotes
Resultado de conversioŐĀn de Word a PDF por lotes
Archivos Docx convertidos a PDFs
Archivos Docx convertidos a PDFs

Para cada archivo de la carpeta, la operación se realiza en tres etapas: se abre el documento, se guarda como PDF mediante el método SaveAs(), en el que se especifica el formato de salida (PDF), y se cierra el documento.

$doc = $word.documents.open($f.FullName) 
$doc.saveas($path,$FormatPDF) 
$doc.close()

En conclusi√≥n, PowerShell proporciona una soluci√≥n eficiente y automatizada para convertir documentos de Word a PDF por lotes. Esta funcionalidad es especialmente √ļtil cuando se trabaja con grandes cantidades de archivos y se desea ahorrar tiempo y esfuerzo. A trav√©s de simples comandos y scripts, es posible automatizar el proceso de conversi√≥n y obtener archivos PDF de alta calidad y consistentes.

Ahora te toca a ti…