使用Adobe Acrobat将PDF转Word/Excel时部分数据缺失如何解决
问题描述

我正在使用Adobe Acrobat将PDF文件转换为Word/Excel格式,希望快速将PDF中的数据迁移为Excel格式。由于存在字体错误,直接复制粘贴无法生效,因此我尝试使用Adobe Acrobat专业版进行转换,但如图所示,转换后有部分数据丢失。
经排查,转换后保留的数据使用字体为T T 4 B 9t00或T T 4 BAt 00,丢失的数据使用字体为T T 4 B 8t00。我猜测如果将T T 4 B 8t00替换为T T 4 B 9t00可能可以解决问题,但Adobe Acrobat本身也没有上述字体。我还尝试使用FontForge提取对应字体,也未能成功。
请问有什么可行的解决方案?我的核心需求是获取PDF中的表格格式数据,目前仅能成功转换部分内容。
解决方案
优先尝试绕开字体依赖直接提取表格
不用纠结字体替换的问题,直接用不依赖原PDF嵌入字体的方案提取数据即可:- 用Office自带的PDF导入功能:Office 365及2021版本的Excel自带「数据>获取数据>来自文件>从PDF」功能,导入时选择忽略嵌入字体,直接解析表格结构,适配大部分常规PDF的表格提取需求,不会受Acrobat的转换逻辑限制。
- 先做全页OCR再导出:打开Adobe Acrobat的「工具>扫描和OCR>识别文本>在本文件中」,识别时选择通用中文字体(如宋体、微软雅黑)作为输出字体,完成OCR后再导出为Excel,此时内容已经是识别后的通用编码文本,不会因为自定义字体丢失内容。
先修改PDF字体映射再转换
如果一定要用Acrobat的转换能力,可以先修改原PDF的字体映射:- 用福昕PDF编辑器打开原PDF,进入「文件>文档属性>字体」,找到
T T 4 B 8t00字体,选择替换为系统已安装的中文字体,保存后再用Acrobat转换即可。 - 如果你会简单脚本,可以用PyPDF2批量修改PDF的字体映射规则,把
T T 4 B 8t00的指向直接替换为T T 4 B 9t00或者系统字体,不需要提取原字体文件即可完成修改。
- 用福昕PDF编辑器打开原PDF,进入「文件>文档属性>字体」,找到
兜底方案
如果以上方案都失效,可以把PDF每页导出为300DPI以上的高清图片,用表格识别工具直接从图片中提取结构化表格内容,完全不依赖原PDF的字体和编码信息,只要内容清晰就可以保证提取准确率。
内容的提问来源于stack exchange,提问作者Neo
相关产品推荐
相关产品推荐

