📄 PDF 文本提取
拖放 PDF 即可按页提取文本。可复制或下载为 .txt。所有处理在浏览器中完成。
完全免费
无需注册
浏览器内完成
5 种语言
深色模式
🔒 关于隐私
- ・所有处理均在您的浏览器中完成
- ・PDF 数据绝不会发送到任何服务器
- ・无存储日志、无上传记录、无数据库
- ・无需注册、登录或付款
⚠ 基于图像的扫描 PDF 无法提取(需要 OCR)。仅支持带文本层的 PDF。
📂
拖放 PDF 或点击选择
📖 常见的坑
使用 pdf.js 按页取出 PDF 中内嵌的文本层。处理全部在浏览器内完成,文件不会被上传。能取出的只有「以文字形式写入的信息」,段落、表格、标题这类结构在 PDF 中本就不存在——PDF 是把字形放置到坐标上的绘制指令集合,而非带有文档结构的格式。
| 情形 | 会发生什么 | 怎么处理 |
|---|---|---|
| 提取出来的文本顺序错乱 | PDF 的内容是一串「在此坐标绘制此字形」的指令,阅读顺序并无保证。双栏排版的论文会左右栏交替混杂;表格会丢失框线,只剩单元格内容排成一行。页眉与页码也会插进正文中间。这不是提取失败,而是 PDF 里本就没有顺序信息。 | 首先请打开「保留版面」——它会把 Y 坐标相近的字符归并还原为一行,因此即使是多栏排版,至少逐行是正确的。之后再用肉眼切分栏。若真正要处理的是表格,请改用表格抽取的方案而非文本提取(Tabula、Camelot 或 pdftotext -layout)。列错位通常只是宽度估算失败,用等宽字体输出后按列位置切分,往往就能还原。 |
| 出现乱码,或复制出来变成别的字 | PDF 通过内嵌字体中的字形编号来绘制文字。若缺少把这些编号映射回 Unicode 的对照表(ToUnicode CMap),任何提取器都无法还原真实字符。字体子集化嵌入时最容易缺失,典型症状是屏幕上阅读完全正常,复制出来却是无意义的字符串。较早的日文 PDF 以及从排版软件导出的 PDF 尤为常见。 |
提取端无法修复。如果还能重新生成文件,导出时重新嵌入字体是唯一的根本办法。若手上只有成品 PDF,把页面渲染为图片再走 OCR,实务上是最快的路径(OCR 工具)。只要读几行输出就能立刻判断映射是否损坏,所以务必先看第一页,别等整份处理完才发现。 |
| 提取结果是 0 个字 | 把纸质文件扫描而成的 PDF,或用手机拍照转成的 PDF,每页都是一整张图片,根本不存在文本层。因为字看得清清楚楚所以容易忽略,但文件内容其实等同于照片。政府发布的资料、合同扫描件、旧纸质资料的电子化,几乎都属于这一类。 | 请交给 OCR 处理。OCR 工具使用 Tesseract 识别日文与英文,并且和本页一样不会把文件交给第三方。判别很简单:若字符数相对页数少得离谱(每页只有几个字甚至更少),那就是扫描件。混合型文件——文本页与扫描页同处一份文档——也很常见,因此看一下每页的字符数,只把 0 字的页送去 OCR,就不会做无用功。 |
能提取出来,和可以使用,是两回事。PDF 可以设置「禁止提取内容」的权限标志,但该标志只是阅读器自愿遵守的约定,并非技术保护——pdf.js 及多数实现都会直接忽略它。反过来,没有该标志也不等于获得了授权。正文能否再分发或改编,完全取决于原资料的著作权与使用条款。另外,本页的处理全部在浏览器内完成,因此载入机密 PDF 也不会外泄,但一旦把提取出的文本粘贴到别的服务,这层保证就不复存在了。
📖 使用方法
-
1
加载 PDF拖放或选择 PDF。pdf.js 自动提取。
-
2
调整选项切换版面和页码;输出更新。
-
3
复制或下载复制到剪贴板或下载 .txt。
❓ 常见问题
能从扫描 PDF 提取文本吗?
不能。仅图像的 PDF 需要 OCR。仅支持含文本层的 PDF。
PDF 会上传服务器吗?
不会。pdf.js 在浏览器中处理。
保留与不保留版面有何不同?
启用时保留换行和空格。禁用时合并为段落。
🔗 相关工具
🐛 此工具出现问题了吗?
免费、无需注册。仅提供复现步骤也有帮助。报告将直接发送给运营者并用于改进。
✅
感谢您的反馈!
已送达运营者,将用于改进工具。