Объединить PDF-файлы в папке в один PDF-файл, соответствующий имени папки
Поскольку у вас есть решение для преобразования всех файлов JPG в файлы PDF, вам необходимо решение, которое объединит все файлы PDF в папке в один файл PDF, объединенный в хронологическом порядке на основе имен файлов.
Вы можете использовать PDFtk Free и его CLI PDFtk с параметром cat
в пакетном скрипте, чтобы автоматизировать операции по преобразованию всех файлов PDF в папке в один PDF с именем папки в качестве имени файла.
PDFtk Free - это наш удобный графический инструмент для быстрого слияния и разделения PDF-документов и страниц. Это бесплатно использовать столько, сколько вам нравится. "
«Опытные пользователи: PDFtk Free поставляется с нашим инструментом командной строки, PDFtk Server. Таким образом, вы получаете графический интерфейс и интерфейс командной строки для PDFtk!"
Пакетный скрипт
Примечание. Значение SourceParentDir=
будет полным путем к папке, в которой находятся подпапки с файлами PDF, которые необходимо объединить.
@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
Пакетный скрипт (обратный порядок)
@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
Дополнительные ресурсы
FOR /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.
ЕСЛИ
Пакетные замены (ЗА /?)
Кроме того, была улучшена замена ссылок на переменные FOR. Теперь вы можете использовать следующий необязательный синтаксис:
%~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>]