Pdftk让你轻松管理你的PDF文档。比如批量加水印。
官网:https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/。可以在Windows、Linux MACOSX、FreeBSD和Solaris系统上使用。
具有强大的功能:(并且可以命令行运行)合并PDF文档 、分割PDF、旋转PDF页面、解密PDF密码、加密PDF、使用FDF Data或者XFDF来填写PDF窗体、添加水印或者标签、显示PDF信息、修改PDF信息、附加文件到PDF页面或者PDF文档、解压PDF附件、压缩pdf附件、分解PDF文档成单页形式、解压和重新压缩PDF流、修复受损的PDF文档、分解PDF到文本
批量添加水印,report文件夹下有多个PDF,包括嵌套的文件夹,(准备好sy.pdf文件,运行命令,
find report -name '*.pdf' |while read f;do pdftk $f stamp sy.pdf output $f.pdf;mv $f.pdf $f;done;
下面示例:
合并PDF:
pdftk 1.pdf 2.pdf 3.pdf cat output 123.pdf
或者 (使用通配符):
pdftk *.pdf cat output combined.pdf
把多个PDF的不同页面组合成一个新的PDF文档(将one.pdf的前7页,two.pdf的前5页,one.pdf的第8页按先后顺序合并成combined.pdf)
pdftk A=one.pdf B=two.pdf cat A1-7 B1-5 A8 output combined.pdf
旋转PDF的第一页为顺时针90度(向东)(其余页方向不变,2-end表示第2页到最后一页)
pdftk in.pdf cat 1E 2-end output out.pdf
旋转PDF的第一页为逆时针(向西)90度,只提取第一页
pdftk in.pdf cat 1W output out.pdf
选择所有PDF页面180度:
pdftk in.pdf cat 1-endS output out.pdf
使用128强度加密PDF(安全模式,只读)
pdftk in.pdf output mydoc.128.pdf owner_pw foopass
同上,同时给PDF加上访问密码(会弹出一个密码输入框)
pdftk in.pdf output mydoc.128.pdf owner_pw foo user_pw baz
同上,但是运行打印:
pdftk in.pdf output mydoc.128.pdf owner_pw foo user_pw baz allow printing
解密PDF文档(foopass替换成pdf的owner_pw密码):注意:前提是你得知道pdf的密码所以此功能只是解除所有者的密码,使阅读者不需要输密码
pdftk secured.pdf input_pw foopass output unsecured.pdf
合并两个PDF文档,其中一个是加密的,但最终文档不加密:
pdftk A=secured.pdf mydoc.pdf input_pw A=foopass cat output combined.pdf
解压PDF流,以便文本编辑:(不清楚是干什么用的)
pdftk mydoc.pdf output mydoc.clear.pdf uncompress
压缩PDF:
pdftk mydoc.pdf output mydoc.clear.pdf compress
修复PDF文档
pdftk broken.pdf output fixed.pdf
分解成单页(文件名以pg_开头)
pdftk mydoc.pdf burst
报告PDF信息,输出到文本
pdftk mydoc.pdf dump_data output report.txt