博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
利用命令行工具pdftk对PDF进行合并分割
阅读量:6273 次
发布时间:2019-06-22

本文共 1413 字,大约阅读时间需要 4 分钟。

pdftk是非常好用的PDF页面操作工具,能够切割、合并、提取指定页面等。

常用包括的功能如下:

  • 合并 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#输入密码转换成无密码PDFpdftk 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

image

转载地址:http://xhlpa.baihongyu.com/

你可能感兴趣的文章
软件测试(二)之 Failure, Error & Fault
查看>>
浅谈MVC3自定义分页
查看>>
.net中ashx文件有什么用?功能有那些,一般用在什么情况下?
查看>>
select、poll、epoll之间的区别总结[整理]【转】
查看>>
CSS基础知识(上)
查看>>
PHP中常见的面试题2(附答案)
查看>>
26.Azure备份服务器(下)
查看>>
mybatis学习
查看>>
LCD的接口类型详解
查看>>
C#中使用RabbitMQ收发队列消息
查看>>
Spring Boot Unregistering JMX-exposed beans on shutdown
查看>>
poi 导入导出的api说明(大全)
查看>>
说说自己对RESTful API的理解s
查看>>
Mono for Android 优势与劣势
查看>>
将图片转成base64字符串并在JSP页面显示的Java代码
查看>>
js 面试题
查看>>
sqoop数据迁移(基于Hadoop和关系数据库服务器之间传送数据)
查看>>
腾讯云下安装 nodejs + 实现 Nginx 反向代理
查看>>
magento2-- 理解自动加载
查看>>
International SEO:多语言多区域网站SEO的快速入门指南
查看>>