Mesclar arquivos PDF em uma pasta para um arquivo PDF que corresponde ao nome da pasta
Como você tem uma solução para converter todos os arquivos JPG em arquivos PDF, você precisa de uma solução que mescle todos os arquivos PDF em uma pasta em um único arquivo PDF mesclado cronologicamente com base nos nomes dos arquivos.
Você pode usar o PDFtk Free e seu CLI PDFtk com o parâmetro cat
em um script em lote para automatizar as operações para converter todos os arquivos PDF dentro de uma pasta em um único PDF com o nome da pasta como o nome do arquivo.
"PDFtk Free is our friendly graphical tool for quickly merging and splitting PDF documents and pages. It is free to use for as long as you like."
"Power Users: PDFtk Free comes with our command-line tool, PDFtk Server. So you get both the GUI and the command-line interface to PDFtk!"
Script em lote
Note: The
SourceParentDir=
value will be the full path to the location where the subfolders with the PDF files reside which you need to merge.
@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
Script em lote (ordem inversa)
@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
Mais recursos
-
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.
-
Substituições em lote (FOR /?)
In addition, substitution of FOR variable references has been enhanced. You can now use the following optional syntax:
%~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>]