利用命令行工具pdftk对PDF进行合并分割
pdftk
是非常好用的PDF页面操作工具,能够切割、合并、提取指定页面等。
参考:PDF 合并和分割工具--PDFtk
参考官网:PDFtk server: the pdf tool kit
常用包括的功能如下:
- 合并 PDF;
- 分割 PDF 页面;
- 旋转 PDF 页面;
- PDF 带密码访问;
- PDF 填加密码;
- 用 X/FDF 填写 PDF 表格;
- 从 PDF 表格中生成 PDF Data Stencils;
- 加背景水印或前景印章;
- 报告 PDF Metrics,书签和元数据;
- 增加 / 更新 PDF 书签或元数据;
- 给 PDF 页面或文档加附件;
- 解压 PDF 附件;
- 分解 PDF 文档为多个单页;
- 解压缩和重压缩页面流;
- 修复受损的 PDF 文档;
安装
Linux上安装:
$ sudo apt-get install pdftk
Mac上安装:因为它对Homebrew支持还不算特别好,需要这样指定文件位置来安装:
$ brew install https://raw.githubusercontent.com/turforlag/homebrew-cervezas/master/pdftk.rb
常用命令
#提取1-15页为一个文件 $ pdftk input.pdf cat 1-15 output new.pdf #提取第1至3,第5,第6至10页,并合并为一个pdf文件 $ pdftk input.pdf cat 1-3 5 6-10 output combined.pdf #合并(concatenate) 前面所有的pdf为output.pdf $ pdftk file1.pdf file2.pdf ... cat output new.pdf #拆分PDF的每一页为一个新文件 并按照指定格式设定文件名 $ pdftk input.pdf burst output new_%d.pdf #按照通配符,合并大量PDF文件 $ pdftk *.pdf cat output combined.pdf #去除第 13 页,其余的保存为新PDF $ pdftk in.pdf cat 1-12 14-end output out1.pdf #扫描一本书,odd.pdf 为书的全部奇数页,even.pdf 为书的全部偶数页,下面的命令可以将两个 pdf 合并成页码正常的书 $ pdftk A=odd.pdf B=even.pdf shuffle A B output collated.pdf #按180°旋转所有页面 $ pdftk input.pdf cat 1-endsouth output output.pdf #按顺时针90°旋转第三页,其他页不变 $ pdftk input.pdf cat 1-2 3east 4-end output output.pdf #输入密码转换成无密码PDF pdftk secured.pdf input_pw foopass output unsecured.pdf
修改PDF的文件结构(目录)
大概流程是:
- 提取PDF的目录结构为一个txt文件
- 手动修改txt文件中的目录结构
- 将txt文件重新加载到PDF中并生成一个新文件
# 提取信息 $ pdftk sample.pdf dump_data output info.txt # 修改信息 # ... # 把更改的信息加载回PDF $ pdftk sample.pdf update_info info.txt output sample2.pdf
相关推荐
elizabethxxy 2020-11-11
CodeAsWind 2020-11-03
Andyshrk 2020-08-29
千锋 2020-08-20
82550495 2020-08-03
demm 2020-07-28
waiwaiLILI 2020-07-20
higher0 2020-07-08
songfens 2020-07-05
hermanncain 2020-06-25
Aleks 2020-06-13
Elmo 2020-06-13
学习进步 2020-06-11
Kwong 2020-06-11
GhostLWB 2020-06-08
xmwang0 2020-06-08
菇星獨行 2020-05-15
ChenRuiyz 2020-05-15