PDFTK 从所有 pdf 输出中提取所有页面

PDFTK 从所有 pdf 输出中提取所有页面

我正在尝试同时提取多个 pdf 的所有页面。

现在它可以与以下产品配合使用:

for %%I in (*.pdf) do "pdftk.exe" "%%I" burst

但我没有得到所有的页面,因为他会为每个新文档覆盖以前提取的页面。

所以我尝试了:

for %%I in (*.pdf) do "pdftk.exe" "%%I" burst output "%%~nI_%02d.pdf"

但它根本不起作用...有什么想法吗?

答案1

尝试以下操作将当前目录的所有 PDF 文件拆分为编号的单页 PDF 文件:

@echo off
setlocal

for %%F in (*.pdf) do call :burst "%%F"

goto xit

:burst
set name=%1
if not [%name:~1,5%]==[burst] (
  pdftk %1 burst output "burst_%~n1_%%04d.pdf"
  for %%d in (doc_data.txt) do del %%d
)
goto :EOF

:xit
pause
endlocal

该脚本会将 添加到所有生成的文件名前面,以避免原始文件和新创建的文件"burst_"发生冲突。指示将页码添加为四位数字,并以零开头。需要 Double 才能退出 CMD shell。PDF%%04dpdftk%

相关内容