把PDF压缩到指定大小,而不只是“变小”
普通的PDF压缩,结果碰巧多大就是多大。要满足邮件或上传的上限,压到一个确切的数字,是另一项工作。
作者:PulsarKit · ·
质量级别和目标大小是两种不同的需求
选一个压缩质量级别(轻度、推荐、强力),然后看结果碰巧落在多大,这是大多数压缩的常规做法;在意质量时,这也是合适的方式。而需要文件小于某个具体数字,比如邮件附件的二十五兆字节,或网页表单上传上限的两兆字节,就是另一种需求了。单一的固定质量设置,没法事先知道它在某份具体文档上会压出多大。要达到一个确切的数字,就得从大小倒推,而不是从质量选择正推。问题从“这份文件要看起来多好”变成了“这份文件必须多小”,回答第二个问题需要另一套流程。
达到一个数字靠搜索,不是猜一次
达到目标大小唯一可靠的方法是搜索,PDF压缩的目标大小模式就是这样做的:试一个质量设置,测量重建后的文件,根据偏差多少向上或向下调整,重复几次,而不是选一个数字碰运气。每次尝试都要把文档里的每张图片完整地重新编码一遍,所以这种按目标压缩明显比一次固定质量的压缩慢。多花的时间,就是达到具体数字而不是近似数字的代价。合理的流程在结果刚好落到目标以下时就停下,不会把文件压得比需要的更小,因为过了那个点再搜索只是浪费时间,对真正要紧的东西没有任何改善。
有些目标低于物理上能达到的下限
PDF里的文字、嵌入字体和矢量图形有固定的体积,再怎么压缩图片也减不下来,因为这些内容本来就不是位图。如果一份文档光是字体和文字就已经超过你要的大小,任何质量设置都到不了。在开始搜索之前,先测量文件去掉所有图片后有多大,就能一开始看到这个下限,而不是白白尝试几分钟之后才发现。一开始就被告知能达到的最小大小,远比工具超出目标却不说、交回一个比要求更大的文件好得多。
不管目标大小是多少,文字都保持清晰
这种压缩只会重新编码文档里嵌入的位图。真正可选中的文字从来不会被改动,无论目标大小多激进,所以一份以文字为主的合同,压到能达到的最小大小时,和最大时一样清晰、可搜索。例外是扫描页。整页本身就是一张图片,激进的目标大小确实会让上面的字迹明显变模糊,因为扫描页下面没有单独的文字层可以保持不动。
连能达到的最小数字都不够小时
一份文档包含的位图页面,可能多到任何目标大小都容纳不下,这时答案不是更小的数字,而是更少的页面。用PDF拆分拆分文件,再把每一部分分别压缩到目标大小,这个办法可行,因为大小下限随页数增长。用删除页面删掉与这次大小限制的用途无关的页面,也行。第三种更彻底的办法,是先用PDF转TXT把以文字为主的文档转成纯文本;连前两种办法都不够的情况很少见,但值得知道有这个选项。
这些数字是什么意思:DPI、质量和下限
PDF里每张图片的体积由两个数字决定。分辨率决定要存储多少像素:一页按300 DPI扫描的A4纸大约有870万像素,同一页按150 DPI是它的四分之一,按96 DPI大约是十分之一。JPEG质量决定每个像素能保留多少字节:85接近原图,45会让照片明显变软。分辨率是更粗暴的手段,所以PDF压缩的目标大小模式先调质量,但最低只到45,也就是它“极限”级别的质量:不再往下压质量,而是改为降低分辨率。
搜索从质量65开始,下一步试45,两次都是全分辨率。如果文件还是太大,就把图片分辨率依次限制在300、150、96,最后是72 DPI,每一步的质量都是45;某一步如果不会改变这份文档的图片,就跳过;只有到了72 DPI,质量才降到20。在第一个让文件达标的步骤上,质量会重新朝目标方向调高,文件一落在目标的90%到100%之间,搜索就停止,最多重建八次,所以要求1 MB时,结果通常在0.9到1 MB之间。72 DPI下的质量20是实际的下限:在目标大小模式下一打开文件就会测量它,低于下限的目标会被锁定。
本文用到的工具
继续阅读
- PDFgear替代工具:哪些功能对应,文件在哪里处理2026年10月20日,我们把PDFgear在线工具页面上的37张卡片与PulsarKit逐一对照。这些卡片背后的36个工具中,有34个有对应工具;PDF to PSD和PSD to PDF没有。
- 压缩一本扫描书:每个级别对60页做了什么论坛上有人问,一本580页的扫描书怎样压小,同时不损害文字。我们用PDF压缩的每个级别处理了一份60页的扫描件,逐一检查了像素、文件大小和文字。
- iPhone照片合成一个PDF:HEIC、顺序、尺寸和哪些内容留在手机上多张iPhone照片可以直接在Safari里合成一个PDF,不用装App,也不用账号。下面说明HEIC转PDF怎样处理页面顺序、页面尺寸、实况照片、拍摄日期和位置,以及哪些内容留在手机上。