如何在不损失质量的情况下压缩 PDF
要在不损失质量的情况下压缩 PDF,不是重新编码图像和文本,而是重新打包文件的内部结构。IXPDF 的「压缩 PDF」工具以对象流方式重新保存文档,将对象打包到压缩的交叉引用流中。页面、文本、图像逐字节保持不变,只是容器变小了。所有处理都在浏览器内本地执行,文件永远不会离开您的设备。
为什么质量得以保留
PDF 文件是编号对象的容器:页面、字体、图像、文本流、元数据。旧版 PDF 将这些对象按顺序存储在交叉引用表(未压缩)中。对象流将相关对象一起打包并用 FlateDecode 压缩 —— 这与各个流内部使用的算法相同,但应用于整个容器。
关键在于:对象流打包完全不触碰每个对象的内容,只改变对象的存储方式。页面的文本流、图像的样本、字体的字形轮廓 —— 全部原样复制到新容器。输出之所以与输入看起来相同,是因为:相同的内容只是被打包得更高效了。
这与将页面光栅化为低分辨率 JPEG 或下采样图像的「压缩工具」有根本区别。那些工具用质量换取大小。IXPDF 不做任何交换 —— 只是重新序列化容器。
操作步骤
- 打开「压缩 PDF」工具。访问 /zh-cn/tools/compress-pdf/。您会看到拖放区和 「执行压缩 PDF」 按钮。
- 选择 PDF。将文件拖放到拖放区,或点击从设备选择。下方会显示所选文件的名称和大小。
- 执行压缩。点击 「执行压缩 PDF」。按钮会切换为 处理中…,进度条显示当前阶段和百分比。此处理在 Web Worker 中进行,因此页面仍可响应。
- 确认质量保留。结果面板显示原始大小、压缩后大小和减小率。打开下载的 PDF,确认页面、文本、图像与源文件看起来相同 —— 因为只是重新打包了容器,所以理应如此。
- 下载结果。点击 下载结果 保存压缩后的 PDF。处理另一个文件 可重新开始。
质量检查清单
压缩后请确认:页数与原文档相同;文本可选中且内容一致;图像清晰度未变;链接和书签仍可用。若任一项失败,源 PDF 可能已被重新编码 —— 但 IXPDF 的输出仍会与输入一致。
压缩效果好的文件
- 以矢量为主的 PDF(文本、线条图、图表、CAD 图纸)压缩效果最好。内容本身已紧凑,最能从对象流打包中受益。
- 旧导出器输出的 PDF 通常有未压缩的交叉引用表和冗余对象,正是对象流要修正的问题。
- 重复使用相同字体的多页文档 在共享字体对象被整合后可能显著缩小。
压缩效果有限的文件
- 以图像为主或扫描的 PDF 可能缩小不多。因为大小的大部分是已压缩的图像数据,对象流无法进一步减小。
- 已被现代导出器优化过的文件,工具会如实报告 无变化 或略微变大 —— 这是正常现象,不是 bug。
常见误区
- 混淆压缩与光栅化。某些工具的「压缩」意味着将页面转为低分辨率图像 —— 会损失文本可选性和图像质量。IXPDF 不会这样做。
- 期望已优化的 PDF 大幅减小。如果文件已由现代工具启用压缩导出,可能几乎没有进一步减小的空间。
- 为「更好」的结果上传到在线压缩工具。这会将文档发送到服务器,破坏隐私承诺,且在质量保留压缩方面几乎不会优于本地的对象流打包。