And*_*dre 10 pdf adobe-acrobat
我有3个文件夹:
Folder 1
Folder 2
Folder 3
Run Code Online (Sandbox Code Playgroud)
在每个文件夹中,我有 5 个 pdf 文件:
Folder 1
file1.pdf
file2.pdf
Folder 2
file1.pdf
file2.pdf
Folder 3
file1.pdf
file2.pdf
Run Code Online (Sandbox Code Playgroud)
我希望在每个文件夹中有这两个文件的组合文件:
Folder 1
binder.pdf
Folder 2
binder.pdf
Folder 3
binder.pdf
Run Code Online (Sandbox Code Playgroud)
任何的想法?不要告诉手动执行。这个案例只是为了向你解释我的问题。认为我有数百个文件夹。:) 也许我可以使用其他工具代替 Adobe Acrobat?!
nix*_*xda 12
您可以使用一个简短的批处理文件和 pdftk.exe(而不是GUI 版本的pdftk Builder)来完成此操作。
无需安装任何东西。
准备
创建一个新的文本文件并粘贴以下代码
@回声关闭 设置本地启用延迟扩展 FOR %%A IN (%*) DO (set command=!command!%%A) pdftk.exe %command% cat 输出“%~dp1binder.pdf”
用法
将在同一文件夹中创建一个新的活页夹PDF,其中所有选定的 PDF 合并为一个
更新:使用当前文件夹名称作为生成的 pdf 文件名的版本
@echo off
setlocal enabledelayedexpansion
:: Concat all paths fromselected files and save it as command
FOR %%A IN (%*) DO (set command=!command! %%A)
:: Take path from first selected file and save it as path
set path=%~dp1
echo %path%
:: Check if a trailing slash is present. If yes, remove it
IF %path:~-1%==\ SET path=%path:~0,-1%
:: Get last folder from path
FOR %%F in ("%path%") do (set lastFolder=%%~nxF)
:: Call pdftk, pass on command. use lastFolder as filename
pdftk.exe %command% cat output "%path%\%lastFolder%.pdf"
Run Code Online (Sandbox Code Playgroud)
小智 5
如果您使用的是 Linux(或 Mac,或任何安装了它的环境),您可以使用名为ghostscript的命令行工具来组合它们。
gs -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=combinedpdf.pdf -dBATCH file1.pdf file2.pdf file3.pdf
Run Code Online (Sandbox Code Playgroud)
也可以使用下面的来合并当前文件夹下的所有文件
gs -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=combinedpdf.pdf -dBATCH *.pdf
Run Code Online (Sandbox Code Playgroud)
你可以在这里下载 ghostscript 。还有一个 Windows 版本,但我没有测试它。
归档时间: |
|
查看次数: |
55696 次 |
最近记录: |