2 votos

Cómo convertir archivos pdf en varias carpetas en varios archivos PDF que coinciden con los nombres de las carpetas

Tengo varias carpetas, cada una contiene múltiples archivos de imagen en PDF como este:

   Folder 1 
     file1.pdf
     file2.pdf
     file3.pdf
     ...
     file100.pdf
  Folder 2 
     file1.pdf
     file2.pdf
     file3.pdf
     ...
     file100.pdf
  Folder 3 
     file1.pdf
     file2.pdf
     file3.pdf
     ...
     file100.pdf
  ...
  Folder 94
     file1.pdf
     file2.pdf
     file3.pdf
     ...
     file100.pdf 
 

¿Hay alguna manera de crear un tipo de script que muestre al mismo tiempo cada carpeta como un archivo pdf como este?

 Folder1.pdf
Folder2.pdf
Folder3.pdf
...
Folder94.pdf
 

1voto

PJ Mahoney Puntos 889

Combinar Archivos PDF en una Carpeta a Un Archivo PDF la Coincidencia del Nombre de la Carpeta

Puesto que usted tiene una solución para convertir todos los archivos JPG en archivos PDF, usted necesita una solución que va a unir todos los archivos PDF en una carpeta en un solo archivo PDF fusionado cronológicamente basado en nombres de archivo.

Usted puede utilizar PDFtk Libre y sus CLI PDFtk con la cat parámetro en una secuencia de comandos por lotes para automatizar las operaciones para convertir todos los archivos PDF dentro de una carpeta en un solo archivo PDF con el nombre de la carpeta como el nombre de archivo.

"PDFtk Libre es nuestra gráfica fácil de usar herramienta para la rápida fusión y dividir los documentos PDF y páginas. El uso es gratuito para siempre como que te gusta."

"Los Usuarios de energía: PDFtk Libre viene con nuestra herramienta de línea de comandos, PDFtk Servidor. Así se obtiene tanto de la interfaz de usuario y la interfaz de línea de comandos para PDFtk!"


Secuencia De Comandos Por Lotes

Nota: El SourceParentDir= valor va a ser la ruta completa a la ubicación donde las subcarpetas con el PDF de archivos que usted necesita para combinar.

@ECHO OFF

SET "SourceParentDir=C:\Root\Parent\Folder"
FOR /R "%SourceParentDir%" %%A IN (.) DO (
    IF /I NOT [%%~A]==[%SourceParentDir%\.] pdftk "%SourceParentDir%\%%~NA\*.pdf" cat output "%SourceParentDir%\%%~NA.pdf"
    )
PAUSE
EXIT

Secuencia De Comandos Por Lotes (Orden Inverso)

@ECHO OFF

SET "SourceParentDir=C:\Root\Parent\Folder"
FOR /R "%SourceParentDir%" %%A IN (.) DO (
    IF /I NOT [%%~A]==[%SourceParentDir%\.] pdftk "%SourceParentDir%\%%~NA\*.pdf" cat output "%SourceParentDir%\temp.pdf"
    IF EXIST "%SourceParentDir%\temp.pdf" pdftk "%SourceParentDir%\temp.pdf" cat end-1 output "%SourceParentDir%\%%~NA.pdf"
    IF EXIST "%SourceParentDir%\%%~NA.pdf" IF EXIST "%SourceParentDir%\temp.pdf" DEL /Q /F "%SourceParentDir%\temp.pdf"
    )
PAUSE
EXIT

Más Recursos

  • PARA /R

    FOR /R [[drive:]path] %variable IN (set) DO command [command-parameters]
    
        Walks the directory tree rooted at [drive:]path, executing the FOR
        statement in each directory of the tree.  If no directory
        specification is specified after /R then the current directory is
        assumed.  If set is just a single period (.) character then it
        will just enumerate the directory tree.
    
  • SI

  • Lote de Sustituciones (/?)

    Además, la sustitución de las referencias a variables ha sido mejorada. Ahora puede utilizar la siguiente sintaxis opcional:

    %~nI        - expands %I to a file name only
    
  • pdftk.exe --Help

          cat [<page ranges>]
                 Assembles (catenates) pages from input PDFs to create a new
                 PDF. Use cat to merge PDF pages or to split PDF pages from
                 documents. You can also use it to rotate PDF pages. Page
                 order in the new PDF is specified by the order of the given
                 page ranges. Page ranges are described like this:
    
                 <input PDF handle>[<begin page number>[-<end page num-
                 ber>[<qualifier>]]][<page rotation>]
    

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: