[工具推荐] img2pdf:无损图像转PDF的实用工具
img2pdf是 Linux 环境下将图像转换为 PDF 的最快速、最有效的工具之一。它专为将多张图像合并到单个 PDF 文档或将单张图像转换为 PDF 而优化,并且基于 Python 开发。
在这篇文章中,我将向大家介绍一个我个人非常喜欢并经常使用的工具。每次使用它时,我都会感叹它的强大。它拥有卓越的速度、Linux 特有的轻量级,并且能够完美地与管道命令结合,这些都让我对它爱不释手。

1. 工作原理 (Working Principle)
它最大的特点是“无重新编码合并(No Re-encoding)”。 * 传统方式 (例如:ImageMagick): 读取图像,分析像素数据,然后根据 PDF 格式重新压缩(有损)。这个过程会消耗大量 CPU 资源,并可能导致图像质量下降。 * img2pdf 方式: 将图像文件的二进制数据原封不动地(Lossless)放入 PDF 容器中。 * 优点: 速度极快,100% 保留原始图像质量,并且生成的文件大小更经济。
2. 安装与卸载 (Installation & Removal)
安装 (以 Ubuntu/Debian 为例)
sudo apt update
sudo apt install img2pdf
卸载
# 仅删除程序
sudo apt remove img2pdf
# 彻底删除配置文件及依赖项
sudo apt purge img2pdf
sudo apt autoremove
3. 主要用法 (Usage Guide)
基本合并
用于将当前目录下的所有 PNG 文件合并成一个 PDF 文件。
img2pdf *.png -o output.pdf
按特定顺序合并
您可以直接列出文件名来指定合并顺序。
img2pdf image1.png image2.png image3.png -o output.pdf
设置页面大小和边距 (高级)
当您需要将图像调整到特定尺寸(例如 A4)或添加边距时非常有用。
# 将图像大小调整为 A4 并添加 2cm 边距
img2pdf --pagesize A4 --border 2cm *.png -o output.pdf
指定特定分辨率 (DPI)
用于强制指定图像的输出分辨率。
img2pdf --dpi 300 *.png -o output.pdf
4. 开发者提示 (Developer's Note)
- 排序问题: Linux 终端的通配符 (
*) 会将数字识别为字符串。- 例如:文件可能会按
1.png、10.png、2.png的顺序合并。 - 解决方案: 最安全的做法是将文件名保存为
01.png、02.png...10.png这样补齐位数。
- 例如:文件可能会按
- 管道利用: 毋庸置疑,管道是 Linux 最便捷的特性之一。您可以接收其他命令的输出,并立即将其转换为 PDF。
find . -name "*.png" | sort | xargs img2pdf -o output.pdf
一句话总结: “当您想在 Linux 环境下,以最快速度、无损画质地创建 PDF 时,img2pdf 是您的最佳选择!”
目前没有评论。