文件全程只在你的浏览器里处理,不会上传到任何服务器。有损模式会把每一页重新绘制成图片,压缩后的文字将无法再选中或搜索;需要保留文字层,请选择「无损重写」。
点击选择,或把 PDF 文件拖到这里
一次一个 .pdf 文件
请选择压缩模式
-
页数
-
原始大小
-
压缩后
-
体积变化
体积变化 =(压缩后 − 原始)÷ 原始 × 100%,负值表示变小。无损模式只重写对象流(useObjectStreams),不改动任何页面内容;有损模式按「渲染倍率 × 72 dpi」把每页栅格化为 JPEG 后重新打包,渲染倍率 1.6 约等于 115 dpi。
两种压缩思路,效果差别很大
PDF 变大的原因通常只有两个:一是文件内部结构松散(对象没打包、有垃圾数据),二是页面里塞了高分辨率位图。对应两种压缩办法:
- 无损重写:把文档对象重新打包成对象流,删除未引用的冗余对象。文字、矢量图完全不受影响,缩放依然清晰,但体积一般只能降 5%~20%。
- 有损重采样:把每一页按指定分辨率渲染成 JPEG 图片,再重新组装成 PDF。体积通常能降到原来的 1/3~1/10,代价是文字层消失,放大后会看到锯齿。
如果你打算打印或存档,用无损;如果只是发微信、发邮件、上传报名系统,用均衡或极限瘦身更实用。
四档预设怎么选
- 高清:渲染倍率 2.0(约 144 dpi),质量 0.85。适合正文全是小字、需要放大看清的文档。
- 均衡:渲染倍率 1.6(约 115 dpi),质量 0.72。屏幕阅读、日常传阅的通用选择。
- 极限瘦身:渲染倍率 1.15(约 83 dpi),质量 0.5。只求能看清结构、要求体积最小的场景。
- 自定义:倍率范围 0.5~4,质量范围 0.2~1,可以自己试出一组体积与清晰度都满意的参数。
为什么压缩后反而变大
如果原文件本来就是纯文字或者已经做过优化,有损重采样反而可能因为塞进整页位图而变大。这时页面会明确提示,换用无损重写即可。灰度选项只对扫描件、图片型 PDF 有效,纯矢量文字文档勾选后不会有变化。
常见问题
文件会上传吗?不会。整个流程用的是浏览器里的 pdf.js 与 pdf-lib,文件通过 FileReader 读进内存,处理完直接生成下载链接,没有任何网络请求。
加密的 PDF 能压缩吗?无损模式可以尝试用空密码打开;如果文档设置了打开密码,需要先用「PDF删除密码」解除保护。
为什么很慢?有损模式要逐页渲染。200 页以上的文档建议分批处理,单页渲染大约需要 100~400 毫秒。
你可能还想问
压缩后文字会变模糊吗?
取决于压缩方式:仅优化结构与字体子集化对文字无损,压缩内嵌图片才会影响清晰度;对文字为主的文档优先用无损方式。
扫描件怎么压得更小?
扫描件主要是图片:转灰度、降分辨率(200-300dpi 足够阅读)、调低图片质量,压缩比通常很可观;保留原档以便日后重压。
压缩到多少算合理?
以满足用途为准:邮件附件通常 10MB 内,阅读留档 5MB 已够;不必追求极限,过度压缩会让重要细节不可辨。
速查在线工具箱