PDF 空白页移除工具
上传一个 PDF,每一页都会被检查是否含有真实内容——文字、图形,或嵌入的图片——因此任何没有内容的页面,包括空白的扫描页,都会被标记为待移除。查看列表,取消勾选想保留的页面,然后下载清理后的文件。
常见问题
这个工具究竟是如何检测空白页的?
分三个层级,从成本最低、最确定的判断开始。含有真实文字,或真正绘制了形状/线条的页面,会被立即判定为非空白——无需进一步检查。完全没有文字、没有图形、也没有任何嵌入图片的页面,会被立即判定为空白——同样无需进一步检查。唯一真正模糊的情况是页面唯一内容是一张嵌入图片:这正是空白扫描页的样子,但也正是内容丰富的扫描页的样子,所以只有这种情况才会被以较小比例渲染出来,检查其中有多少部分真正接近白色。
为什么需要渲染某些页面,而不是直接检查文字?
因为来自扫描仪的空白页,从 PDF 自身的角度看并不是"空的"——它是一整页图片,和内容丰富的扫描页本质上一样。这两种情况下都没有文字层可供检查,所以区分空白扫描页和内容丰富扫描页的唯一可靠方法,就是真正去看像素。渲染只用于这一种模糊情况,而不是每一页都渲染,这使得工具在长文档上依然很快——因为大多数页面仅凭其文字和绘制内容就能立即做出判断。
它会不会误删含有细微内容的页面,比如浅色水印或一个小污点?
像素检测会容忍少量非白色内容——大约页面的 0.5%——这样做正是为了让逼真的扫描仪传感器噪点、几乎看不见的灰尘斑点,或细微瑕疵,不会阻止一张真正空白的页面被正确识别为空白。而读者真正能看到的水印或页眉,通常会远超这个容忍范围,不会被标记。无论如何,任何页面都不会被自动删除——每一个被检测到的页面都会先出现在一个可勾选的列表中,供你在下载前查看并取消勾选。
如果一个页面只有页码或一个很小的页眉,会怎样?
它会被正确保留。任何真正可提取的文字——哪怕只是一个页码——就足以让结构化检查立即将该页判定为非空白,完全不需要渲染它,也不需要做任何像素分析。只有完全没有文字的页面才会进入更谨慎的基于图像的检查。
如果一张照片恰好大部分是白色的,比如雪景或空白白板,工具会误判吗?
说实话,会——这是基于像素检测的一个真实局限,本工具无法完全排除这种情况。一张真正以白色或接近白色为主的照片(雪景、曝光过度的照片、几乎空白的白板)可能会和空白扫描页表现得一样。这正是为什么结果是一份可供审查的清单,而不是自动删除——如果你的文档中有这类页面,下载前请对照自己的文档检查一下页面缩略图。
这对从未扫描、纯数字方式创建的文档也适用吗?
适用。在数字创建的文档中故意留白的一页——比如印刷书籍中本应保持空白的章节分隔页——既没有文字,也没有图形,也没有任何图片,因此结构化检查会立即识别出它,完全不需要渲染,处理方式和扫描文档中的情况完全一样。
我的 PDF 会被上传到服务器吗?
不会。文件的打开、每一页的分析,以及像素检测所需的任何渲染,都完全在你的浏览器中通过 pdf.js 和 Canvas API 完成,不会上传到任何地方。
我可以选择实际要移除哪些空白页吗?
可以——每一个被检测到的空白页都会出现在一份清单中,标明页码和被标记的原因(完全空白,或空白扫描页)。每一页默认都处于勾选状态(意味着将被移除),但如果你希望在最终文件中保留某一特定页面,可以在下载前取消勾选它。
移除页面会影响 PDF 的其他部分吗,比如书签或表单?
你保留的每一页内容都完全不受影响。可能受到影响的,是那些专门指向被移除页面的内容——比如指向一个已不存在页面的书签或内部链接,或是位于该页面上的表单字段,将不再有指向的目标。如果这对你的文档很重要,值得在使用结果之前快速检查一下,就像使用任何会从 PDF 中删除页面的工具时一样。
这个工具能处理多少页?
整份文档会一次性逐页扫描,因此无论是 5 页的文档还是 500 页的文档,处理方式都一样。由于只有那些模糊的、仅含图片的页面才会被真正渲染,即使每一页都被检查过,篇幅很长、文字很多的文档也能很快完成检查。
我保留的页面会损失画质吗?
不会。移除一页只是把它从文档中去掉——保留下来的页面会精确保持原有的内容、字体和嵌入图片不受影响,因为整个过程中没有任何内容被重新渲染或重新压缩。唯一用到的渲染,是用来检查那些模糊的、仅含图片的页面是否空白的一次有损、低比例的预览,仅用于做出这一判断;之后就会被丢弃,永远不会成为下载文件的一部分。