# [工具推荐] img2pdf:无损图像转PDF的实用工具 > `img2pdf` 是 Linux 环境下将图像转换为 PDF 的最快速、最有效的工具之一。它专为将多张图像合并到单个 PDF 文档或将单张图像转换为 PDF 而优化,并且基于 Python 开发。 在这篇文章中,我将向大家介绍一个我个人非常喜欢并经常使用的工具。每次使用它时,我都会感叹它的强大。它拥有卓越的速度、Linux 特有的轻量级,并且能够完美地与管道命令结合,这些都让我对它爱不释手。 ![图片转PDF的流程图示](/media/whitedec/blog_img/2ab5b1e13c8247bc98d6174c12c0c5c2.webp) ## 1. 工作原理 (Working Principle) {#sec-f8af2ee385bf} 它最大的特点是**“无重新编码合并(No Re-encoding)”**。 * **传统方式 (例如:ImageMagick):** 读取图像,分析像素数据,然后根据 PDF 格式重新压缩(有损)。这个过程会消耗大量 CPU 资源,并可能导致图像质量下降。 * **img2pdf 方式:** 将图像文件的二进制数据**原封不动地(Lossless)**放入 PDF 容器中。 * **优点:** 速度极快,100% 保留原始图像质量,并且生成的文件大小更经济。 ## 2. 安装与卸载 (Installation & Removal) {#sec-aa068551b507} ### 安装 (以 Ubuntu/Debian 为例) {#sec-0dfc74ad579f} ```bash sudo apt update sudo apt install img2pdf ``` ### 卸载 {#sec-17fc6056a949} ```bash # 仅删除程序 sudo apt remove img2pdf # 彻底删除配置文件及依赖项 sudo apt purge img2pdf sudo apt autoremove ``` --- ## 3. 主要用法 (Usage Guide) {#sec-02dae59f6008} ### 基本合并 {#sec-002951a3397c} 用于将当前目录下的所有 PNG 文件合并成一个 PDF 文件。 ```bash img2pdf *.png -o output.pdf ``` ### 按特定顺序合并 {#sec-3136d0efa9f4} 您可以直接列出文件名来指定合并顺序。 ```bash img2pdf image1.png image2.png image3.png -o output.pdf ``` ### 设置页面大小和边距 (高级) {#sec-8dfce1207c34} 当您需要将图像调整到特定尺寸(例如 A4)或添加边距时非常有用。 ```bash # 将图像大小调整为 A4 并添加 2cm 边距 img2pdf --pagesize A4 --border 2cm *.png -o output.pdf ``` ### 指定特定分辨率 (DPI) {#sec-231f83e819d7} 用于强制指定图像的输出分辨率。 ```bash img2pdf --dpi 300 *.png -o output.pdf ``` --- ## 4. 开发者提示 (Developer's Note) {#sec-34c448091f29} * **排序问题:** Linux 终端的通配符 (`*`) 会将数字识别为字符串。 * 例如:文件可能会按 `1.png`、`10.png`、`2.png` 的顺序合并。 * **解决方案:** 最安全的做法是将文件名保存为 `01.png`、`02.png` ... `10.png` 这样补齐位数。 * **管道利用:** 毋庸置疑,管道是 Linux 最便捷的特性之一。您可以接收其他命令的输出,并立即将其转换为 PDF。 ```bash find . -name "*.png" | sort | xargs img2pdf -o output.pdf ``` --- > **一句话总结:** “当您想在 Linux 环境下,以最快速度、无损画质地创建 PDF 时,img2pdf 是您的最佳选择!”