Línea de comandos por lotes de Windows 7 para guardar como archivo .pdf para el archivo .docx de Word 2013

10

Me gustaría tener la forma más rápida de exportar mi archivo de informe .docx a .pdf y distribuirlo a otros siempre que tenga una versión nueva y actualizada.

Estoy buscando un enfoque de línea de comandos que automatice los siguientes pasos que tengo que hacer manualmente usando mi mouse hasta ahora:

File -> Save as -> Browse for location

¿Cuáles son mis opciones de comando para un archivo por lotes?

Nam G VU
fuente
1
Echa un vistazo a esta pregunta: superuser.com/questions/541357/...

Respuestas:

11

Cree una macro global en Word 2013:

' The Word macro for exporting to PDF (the Word window closes after finishing)
Sub ExportToPDFext()
    ChangeFileOpenDirectory ThisDocument.Path
    ActiveDocument.ExportAsFixedFormat _
        OutputFileName:=Left(ActiveDocument.FullName, InStrRev(ActiveDocument.FullName, ".")) + "pdf", _
        ExportFormat:=wdExportFormatPDF, _
        OpenAfterExport:=False, _
        OptimizeFor:=wdExportOptimizeForPrint, _
        Range:=wdExportAllDocument, _
        From:=1, _
        To:=1, _
        Item:=wdExportDocumentContent, _
        IncludeDocProps:=True, _
        KeepIRM:=True, _
        CreateBookmarks:=wdExportCreateNoBookmarks, _
        DocStructureTags:=True, _
        BitmapMissingFonts:=True, _
        UseISO19005_1:=False
    Application.Quit SaveChanges:=wdDoNotSaveChanges
End Sub

Después de eso, puede convertir un documento de Word a PDF en la línea de comandos:

"C:\Program Files\Microsoft Office\Office15\WINWORD.EXE" /mExportToPDFext /q "your_document_path.docx"

La ventana de Word ni siquiera aparecerá porque está configurada para cerrarse después de que la macro termine de funcionar, y el parámetro / q deshabilita la ventana de bienvenida cuando se está cargando Word.

Aquí están las instrucciones detalladas alternativas en GitHub . Además, la opción del menú contextual permite la conversión por lotes incluso sin la línea de comando. Se puede agregar al registro. Para DOC y DOCX:

[HKEY_CLASSES_ROOT\Word.Document.8\shell\SavePDFhere]
@="Save PDF here"

[HKEY_CLASSES_ROOT\Word.Document.8\shell\SavePDFhere\command]
@="\"C:\\Program Files\\Microsoft Office\\Office15\\WINWORD.EXE\" /mExportToPDFext /q \"%1\""

[HKEY_CLASSES_ROOT\Word.Document.12\shell\SavePDFhere]
@="Save PDF here"

[HKEY_CLASSES_ROOT\Word.Document.12\shell\SavePDFhere\command]
@="\"C:\\Program Files\\Microsoft Office\\Office15\\WINWORD.EXE\" /mExportToPDFext /q \"%1\"" 
Oleksiy Kovtun
fuente
0

Para usar una herramienta simple de línea de comandos para la conversión por lotes, puede usar docx2pdf: https://github.com/AlJohri/docx2pdf/

Instalar en pc:

pip install docx2pdf

Correr:

docx2pdf myFolderOfWordDocs

Descargo de responsabilidad: soy el autor de esta herramienta.

Al Johri
fuente