批处理调用pdftk.exe给pdf文件逐页添加书签 | @echo off | | | | | | chcp 65001 >nul | | cd /d "%~dp0" | | for /f "delims=" %%i in ('dir /b /a-d *.pdf') do ( | | if exist "%%~ni.txt" ( | | pdftk "%%i" dump_data_utf8 output |find "BookmarkTitle:" 1>nul | | if errorlevel 1 ( | | (for /f "tokens=1* delims=[]" %%a in ('find /n /v "" ^<"%%~ni.txt"') do ( | | if "%%b" neq "" ( | | echo BookmarkBegin | | echo BookmarkTitle: %%b | | echo BookmarkLevel: 1 | | echo BookmarkPageNumber: %%a | | ) | | ))>report.txt | | pdftk "%%i" update_info_utf8 report.txt output "%%~ni_new.pdf" | | ) | | ) else ( | | echo 未找到文本 [%%~ni.txt] | | ) | | ) | | del report.txt 2>nul | | pauseCOPY |
|