作为一名长期在Linux系统下工作的内容创作者,我曾无数次被PDF转换的需求困扰:客户发来的PDF需要提取文字编辑,同事分享的PPT转成的PDF要批量转成图片用于排版,甚至有时需要把几百页的文档拆分成单页PDF分发……在Windows或Mac上,这类需求可能只需一个付费软件就能解决,但在Linux的世界里,开源工具的灵活性和强大性才是真正的“生产力密码”。
一、为什么Linux下的PDF转换值得关注?
PDF(Portable Document Format)作为跨平台的文档标准,几乎统治了办公和出版领域。但它的“不可编辑性”既是优势也是痛点——当你需要修改内容、提取元素或转换格式时,就必须依赖专门的工具。
Linux系统的特殊性在于:
- 命令行原生支持:无需图形界面即可批量处理,适合服务器或远程操作;
- 开源免费:避免了商业软件的订阅费用和版权限制;
- 高度可定制:工具之间可以通过管道(
|)组合,实现复杂的自动化工作流。
无论是个人用户还是企业团队,掌握Linux下的PDF转换工具,都能极大提升文档处理效率。
二、命令行工具:效率至上的“隐形助手”
对于Linux用户来说,命令行工具是“第一选择”——它们轻量、快速,且能通过脚本实现自动化。以下是最实用的几款:
1. Poppler工具集:PDF处理的“瑞士军刀”
Poppler是Linux系统中最基础也最强大的PDF处理库,基于Xpdf开发,衍生出一系列命令行工具,几乎覆盖了PDF转换的所有基础需求。
(1)pdftotext:PDF转文本的“速度之王”
如果你只需要提取PDF中的文字,pdftotext绝对是首选。它支持保留原始排版(如换行、缩进),也可以输出纯文本。
安装(以Debian/Ubuntu为例):
sudo apt install poppler-utils
基本用法:
# 简单转换:将input.pdf转为input.txt
pdftotext input.pdf
# 保留排版(适合有表格、列表的文档)
pdftotext -layout input.pdf output.txt
# 指定页码范围(如第2到第5页)
pdftotext -f 2 -l 5 input.pdf partial.txt
优势:速度极快,即使处理几百页的PDF也不会卡顿;支持中文等多语言编码(需确保系统字体完整)。
(2)pdftoppm:PDF转图片的“全能选手”
需要将PDF页面转成图片(如PNG、JPG)用于网页、PPT或印刷?pdftoppm可以轻松实现,还支持自定义分辨率。
基本用法:
# 转成PNG图片(默认输出格式为PPM,需指定-png参数)
pdftoppm -png input.pdf output_prefix
# 调整分辨率(默认72DPI,印刷建议300DPI)
pdftoppm -png -r 300 input.pdf highres_output
# 只转换第3页
pdftoppm -png -f 3 -l 3 input.pdf page3
输出结果:会生成output_prefix-001.png、output_prefix-002.png等文件,按页码排序。
(3)pdfunite与pdfseparate:PDF合并/拆分“双剑客”
- 合并PDF:将多个PDF文件整合成一个
pdfunite file1.pdf file2.pdf file3.pdf merged.pdf - 拆分PDF:将多页PDF拆分成单页文件
pdfseparate input.pdf output_page_%d.pdf(
%d会被页码替换,输出output_page_1.pdf、output_page_2.pdf等)
2. LibreOffice:办公套件的“隐藏技能”
LibreOffice是Linux下的开源办公软件,但很多人不知道它的命令行模式可以实现PDF与Office格式(Word、Excel、PPT)的转换。
安装:
sudo apt install libreoffice
基本用法:
# PDF转Word(.docx格式)
libreoffice --headless --convert-to docx input.pdf
# PDF转Excel(.xlsx格式,仅适用于表格类PDF)
libreoffice --headless --convert-to xlsx input.pdf
# Word转PDF
libreoffice --headless --convert-to pdf input.docx
注意:
--headless表示无图形界面运行,适合服务器环境;- 转换效果依赖PDF的“可编辑性”——如果是扫描件(图片PDF),转换后可能还是乱码,需要先OCR处理。
3. Ghostscript:PostScript与PDF的“转换器”
Ghostscript(简称gs)是处理PostScript和PDF文件的底层工具,虽然操作稍复杂,但能实现更精细的控制(如压缩PDF、转换颜色模式)。
安装:
sudo apt install ghostscript
实用场景:
- 压缩PDF大小(适合分享或上传):
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=compressed.pdf input.pdf其中
/screen表示低分辨率(72DPI),适合屏幕显示;若需要高质量印刷,可改为/printer(300DPI)或/prepress(300DPI,保留色彩管理)。 - PDF转PostScript:
gs -sDEVICE=ps2write -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.ps input.pdf
4. OCRmyPDF:扫描件PDF的“文字唤醒师”
如果你的PDF是扫描件(本质是图片),上述工具都无法提取文字——这时候需要OCR(光学字符识别)工具。OCRmyPDF是Linux下最易用的OCR工具,能自动识别图片PDF并添加文字层。
安装(需依赖Tesseract OCR引擎):
# 简单转换:将input.pdf转为input.txt
pdftotext input.pdf
# 保留排版(适合有表格、列表的文档)
pdftotext -layout input.pdf output.txt
# 指定页码范围(如第2到第5页)
pdftotext -f 2 -l 5 input.pdf partial.txt0
基本用法:
# 简单转换:将input.pdf转为input.txt
pdftotext input.pdf
# 保留排版(适合有表格、列表的文档)
pdftotext -layout input.pdf output.txt
# 指定页码范围(如第2到第5页)
pdftotext -f 2 -l 5 input.pdf partial.txt1
优势:支持批量处理,还能修复PDF的旋转、清晰度问题,是处理扫描文档的必备工具。
三、图形界面工具:可视化操作的“友好选择”
如果不熟悉命令行,Linux也有不少直观的图形界面(GUI)工具,兼顾易用性和功能:
1. PDF Arranger:PDF页面管理“神器”
PDF Arranger是一款轻量级的PDF编辑工具,界面简洁,主要用于合并、拆分、旋转、重排PDF页面。
安装:
# 简单转换:将input.pdf转为input.txt
pdftotext input.pdf
# 保留排版(适合有表格、列表的文档)
pdftotext -layout input.pdf output.txt
# 指定页码范围(如第2到第5页)
pdftotext -f 2 -l 5 input.pdf partial.txt2
使用场景:

- 把多个PDF的特定页面挑出来组合成新文档;
- 旋转扫描时方向错误的页面;
- 删除PDF中的冗余页面。
特点:拖拽操作即可完成编辑,适合对可视化要求高的用户。
2. Master PDF Editor:功能全面的“PDF编辑器”
Master PDF Editor是Linux下少有的“全能PDF工具”,不仅能转换格式,还能编辑文本、添加注释、填充表单。
安装:
可从官方网站下载Deb包,或通过PPA安装:
# 简单转换:将input.pdf转为input.txt
pdftotext input.pdf
# 保留排版(适合有表格、列表的文档)
pdftotext -layout input.pdf output.txt
# 指定页码范围(如第2到第5页)
pdftotext -f 2 -l 5 input.pdf partial.txt3
核心功能:
- 转换格式:PDF与Word、Excel、图片互转;
- 编辑内容:直接修改PDF中的文字和图片;
- 安全设置:添加密码、水印、数字签名。
注意:免费版有部分功能限制(如无法编辑加密PDF),但基础转换需求完全满足。
3. Calibre:电子书管理“附带福利”
Calibre是知名的电子书管理工具,但它的“转换功能”同样强大——支持PDF与EPUB、MOBI等电子书格式互转,还能批量处理。
安装:
# 简单转换:将input.pdf转为input.txt
pdftotext input.pdf
# 保留排版(适合有表格、列表的文档)
pdftotext -layout input.pdf output.txt
# 指定页码范围(如第2到第5页)
pdftotext -f 2 -l 5 input.pdf partial.txt4
使用方法:
打开Calibre后,点击“添加书籍”导入PDF,再点击“转换书籍”选择目标格式(如EPUB),即可完成转换。适合需要将PDF转成电子书的用户。
四、实战:打造自动化PDF处理工作流
Linux工具的魅力在于“组合”——通过Shell脚本,你可以将多个工具串联起来,实现复杂的自动化任务。以下是两个实用案例:
案例1:批量OCR扫描件并压缩
如果有一批扫描件PDF需要转成可搜索的小体积PDF,可以写一个脚本:
# 简单转换:将input.pdf转为input.txt
pdftotext input.pdf
# 保留排版(适合有表格、列表的文档)
pdftotext -layout input.pdf output.txt
# 指定页码范围(如第2到第5页)
pdftotext -f 2 -l 5 input.pdf partial.txt5
将脚本保存为pdf_ocr_compress.sh,赋予执行权限(chmod +x pdf_ocr_compress.sh)后运行,即可自动处理所有PDF。
案例2:PDF批量转高分辨率图片
需要将PDF每页转成300DPI的PNG图片用于印刷?用pdftoppm批量处理:
# 简单转换:将input.pdf转为input.txt
pdftotext input.pdf
# 保留排版(适合有表格、列表的文档)
pdftotext -layout input.pdf output.txt
# 指定页码范围(如第2到第5页)
pdftotext -f 2 -l 5 input.pdf partial.txt6
运行后,每个PDF会对应一个文件夹,里面是按页码排序的高分辨率图片。
五、总结:选择适合你的工具
Linux下的PDF转换工具各有侧重,选择时可以参考以下原则:
- 快速提取文字:用
pdftotext; - PDF转图片:用
pdftoppm; - 扫描件OCR:用
OCRmyPDF; - Office格式互转:用LibreOffice;
- 可视化编辑:用PDF Arranger或Master PDF Editor;
- 自动化批量处理:用命令行工具+Shell脚本。
在Linux的世界里,没有“最好”的工具,只有“最适合”的组合。掌握这些工具,不仅能解决日常的PDF转换需求,更能让你体会到开源系统的灵活性——毕竟,自由地处理自己的文档,才是数字时代的“生产力自由”。
