zoukankan      html  css  js  c++  java
  • Ubuntu中使用pdftk合并、分离PDF文档等操作

    PDFtk有三个版本、一个是Free免费版、一个Pro专业版需要付费、一个是server命令行版本。使用PDFtk可以合并、拆分等操作pdf文档
    系统环境

    Ubuntu 20.04

    安装

    使用snap包管理器来安装pdftk:

    $ sudo snap install pdftk
    

    Ubuntu中使用pdftk合并、分离PDF文档等操作Ubuntu中使用pdftk合并、分离PDF文档等操作

    合并多个PDF

    下面例子中将admin_guide.pdf started_guide.pdf user-guide.pdf三个文件合并在一起,输出文件名为:guide.pdf:

    bob@ubuntu-20-04:~/test$ pdftk *.pdf cat output guide.pdf
    或者
    bob@ubuntu-20-04:~/test$ pdftk A=user-guide.pdf B=started_guide.pdf C=admin_guide.pdf cat A C B output Guide.pdf
    

    使用A,B,C变量之后,可以按照自定义的顺序合并。
    Ubuntu中使用pdftk合并、分离PDF文档等操作Ubuntu中使用pdftk合并、分离PDF文档等操作
    可以看到合并之后对的大小是2M。是前面三个文件合并之后的大小。

    拆分PDF

    使用burst参数来拆分PDF。如果需要指定切割后的每一个pdf文件名,可以添加output参数,后面跟上前缀:

    bob@ubuntu-20-04:~/test$ pdftk user-guide.pdf burst output user-guide_%02d.pdf
    

    上面output后面跟的值,%02d意思是输出2位十进制的数字。
    Ubuntu中使用pdftk合并、分离PDF文档等操作Ubuntu中使用pdftk合并、分离PDF文档等操作

    加密pdf
    为PDF添加访问密码

    将user-guide.pdf文件加入访问密码admin123,并保存为encrypt-user-guide.pdf文件。

    bob@ubuntu-20-04:~/test$ pdftk user-guide.pdf output encrypt-user-guide.pdf user_pw admin123
    

    看到下图,打开encrypt-user-guide.pdf文件时需要提供密码。
    Ubuntu中使用pdftk合并、分离PDF文档等操作Ubuntu中使用pdftk合并、分离PDF文档等操作

    为PDF添加编辑密码

    下面将user-guide.pdf文件添加编辑密码,密码为Admin123。输出文件为editpw-user-guide.pdf

    bob@ubuntu-20-04:~/test$ pdftk user-guide.pdf output editpw-user-guide.pdf owner_pw Admin123
    

    Ubuntu中使用pdftk合并、分离PDF文档等操作Ubuntu中使用pdftk合并、分离PDF文档等操作
    Ubuntu中使用pdftk合并、分离PDF文档等操作Ubuntu中使用pdftk合并、分离PDF文档等操作

    为PDF添加访问密码和编辑密码

    下面命令使用owner_pwuser_pw设置编辑密码和访问密码。

    bob@ubuntu-20-04:~/test$ pdftk user-guide.pdf output allpw-user-guide.pdf owner_pw Admin123 user_pw admin123
    

    使用下面的allow printing参数,可以让加密的文件支持打印。

    bob@ubuntu-20-04:~/test$ pdftk user-guide.pdf output encrypt-user-guide.pdf owner_pw Admin123 allow printing
    

    可以看到下图,不能点击打印,这是没有添加allow printing参数的状态。
    Ubuntu中使用pdftk合并、分离PDF文档等操作Ubuntu中使用pdftk合并、分离PDF文档等操作
    下面图片是添加allow printing参数的状态,不需要输入编辑密码,就可以打印:
    Ubuntu中使用pdftk合并、分离PDF文档等操作Ubuntu中使用pdftk合并、分离PDF文档等操作

    解密PDF

    下面是解密命令,关键参数是input_pw,首先需要提供编辑的密码,也就是设置的owner_pw参数,导出为noeditpw-user-guide.pdf之后,再将noeditpw-user-guide.pdf文件解密访问密码,也就是user_pw参数,导出文件为decrypt-user-guide.pdf。解密编辑密码和访问密码都是同样的命令,但解密顺序首先是编辑密码,然后是访问密码。

    bob@ubuntu-20-04:~/test$ pdftk encrypt-user-guide.pdf input_pw Admin123 output noeditpw-user-guide.pdf
    bob@ubuntu-20-04:~/test$ pdftk noeditpw-user-guide.pdf input_pw admin123 output decrypt-user-guide.pdf
    
    提取页面
    提取奇数页面

    使用下面命令提取出文件中的奇数页,使用的参数是1-endodd意思是从第一页到尾页选择odd(奇数页),导出为odd-started_guide.pdf文件。

    bob@ubuntu-20-04:~/test$ pdftk started_guide.pdf cat 1-endodd output odd-started_guide.pdf
    
    提取偶数页面

    使用下面命令提取出文件中的偶数页,使用的参数是1-endeven意思是从第一页到尾页选择even(偶数页),导出为even-started_guide.pdf文件。

    bob@ubuntu-20-04:~/test$ pdftk started_guide.pdf cat 1-endeven output even-started_guide.pdf
    
    提取指定页面

    下面命令可以提取出指定页数并另存文件。

    bob@ubuntu-20-04:~/test$ pdftk started_guide.pdf cat 2 3 5 7-end output rand_page_started_guide.pdf
    
    总结

    pdftk具有强大功能,具有合并PDF文档 、分割PDF、旋转PDF页面、解密PDF密码、加密PDF等众多功能。

  • 相关阅读:
    如何写一个计算器?
    Web-Scale IT 我之见!
    Django 安全策略的 7 条总结!
    运维安全系列基础服务之 FTP 服务(系列一)
    程序复杂度之圈复杂度
    微信小程序的wx-charts插件-tab选项卡
    微信小程序的wx-charts插件-tab选项卡
    小程序请假效果
    HTTP状态码
    解决微信小程序使用wxcharts在屏幕不固定问题-开发工具里也显示好了布局,为啥到真机就是乱的
  • 原文地址:https://www.cnblogs.com/linuxprobe/p/15729747.html
Copyright © 2011-2022 走看看