PDF 检查器
看清一份 PDF 究竟是什么:版本、保存历史、安全处理器、页面框、字体、表单和脚本。
文件在这个标签页里被逐字节读取以生成报告,而报告只在你复制或下载时才离开页面。文档的任何信息都不会被上传。
去编辑它报出来的那些信息
关于 PDF 检查器
两个在屏幕上一模一样的文件,行为可能完全不同:一个是干净的一次保存,另一个在原件上摞了八次更新、带着一个过期的快速网页浏览头,还用了别人都没有的字体。这里把原始字节和对象图一并读取——%PDF 头与目录里的版本对照,泄露每一次增量保存的文件末尾标记,交叉引用是经典表格还是压缩流,加密字典及其权限位——然后把页面框、字体、图片、表单、注释、书签、附件、图层和脚本铺成一份报告。它在你的设备上进行,凡是读不出来的都会被列出,而不是靠猜。
功能特性
- 分别给出文件头里的版本和目录里的版本,并在某次更新抬高了版本时加注
- 保存历史:文件末尾标记、增量保存次数,以及快速网页浏览是否仍然完好
- 安全处理器、加密算法与密钥长度,每一个权限位都解出并写明名称
- 页面尺寸按纸张名称和毫米分组,另有旋转、UserUnit 缩放,以及任何裁切框、出血框或图形框
- 字体及其嵌入状态、去重后的图片数、按类型统计的表单域和按子类型统计的注释
- 书签、按名称列出的附件、可选内容图层,以及 JavaScript 可能藏身的各处
- 从 XMP 包里读出的 PDF/A 与 PDF/UA 声明,以及标签化状态和结构树
- 整份报告可复制,或作为 JSON 下载,便于开工单或印前检查
如何使用 PDF 检查器
- 把 PDF 拖到页面上
- 先看徽标条上的要点——版本、页数、标准、加密、更新次数
- 再往下逐张看文档、安全性、页面和内容四张卡片里的细节
- 需要把结论交到别处时,复制或下载 JSON
示例
输入
contract-v7.pdf — 24 pages
输出
PDF 1.7 · Tagged · Encrypted · 3 incremental updates · AES 256-bit · printing allowed, copying blocked
徽标条只作概括;下面那四张卡片逐条解释每一项声明。
常见错误与故障排除
- 阅读器显示有标题,这里的文档信息却是空的。 — 那些字符串是加密的。结构、页面尺寸、字体和权限位于加密部分之外,仍然读得出来,文本值则不行——请用 PDF 解密去掉密码后再检查。
- 它显示 PDF/A-2b,但我们的校验器拒收这个文件。 — 那个徽标是 XMP 包所作的声明,不是判定结果。这里不会重新核对合规测试涵盖的色彩空间、字体和透明规则,所以请把它当成一项待核实的声明。
- 找不到文档目录。 — 在加密文件里,它通常位于一个压缩对象流内,而后者没有密码打不开。它之上的每一项字节级事实——版本、保存历史、交叉引用类型——都依然准确。
- 报出的对象数比别的工具数出来的少。 — 格式有误的对象会被单独计数,其内容被排除在报告之外,而不是凭空编造。对象无法解析的文件,可以用 PDF 修复重建。
常见问题
- 「3 次增量更新」说明了这份文档的什么?
- 说明它是在原件之上保存了三次,而不是整体重写。更早的状态仍留在字节里,所以后来被遮盖掉的内容可能可以恢复,而文件也比它本该有的更大。
- 线性化和「为网络优化」是一回事吗?
- 是。线性化文件把第一页放在前面,阅读器因此能在其余部分到达之前就显示它。这里还会检查它是否依然完好:一次增量保存会把那个头留在原地,于是阅读器仍然会把整个文件都载入。
- 权限显示为允许,文件却仍然不让我复制,为什么?
- 权限位是对阅读器的请求,不是对内容的锁。这里完全按安全处理器存储的样子把它们解出来;任何一个查看器是否遵守,取决于那个查看器自己。
- 报告能告诉我某一页是矢量还是扫描件吗?
- 实务上相当可靠:没有字体、只有一张大图的页面就是扫描件。内容卡片给出字体数量和去重后的图片数,这已足以把电子生成的页面和拍照得来的分开。
- 什么是混合交叉引用段?
- 指同时带有经典表格和压缩流的文件,于是新旧阅读器都能找到对象。在为求最广兼容性而保存的文档里,这很常见。
相关工具
更多PDF工具
查看全部PDF工具 (85) · 全部工具