相关疑难解决方法(0)

将 CID 字体代码解码为等效的 ASCII 字符

我正在尝试从一堆 PDF 中挖掘一些文本,其中一些在输出中嵌入了CID 字体

(cid:80)(cid:72)(cid:87)(cid:68)(cid:70)(cid:76)(cid:87)(cid:76)(cid:72)(cid:86)(cid:3)
(cid:177)(cid:3)(cid:71)(cid:72)(cid:191)(cid:81)(cid:72)(cid:71)(cid:3)(cid:69)(cid:92
(cid:3)(cid:56)(cid:49)(cid:3)(cid:43)(cid:68)(cid:69)(cid:76)(cid:87)(cid:68)(cid:87)
(cid:3)(cid:68)(cid:86)(cid:3)(cid:70)(cid:76)(cid:87)(cid:76)(cid:72)(cid:86)(cid:3)
(cid:90)(cid:76)(cid:87)(cid:75)(cid:3)(cid:80)(cid:82)(cid:85)(cid:72)(cid:3)(cid:87)
(cid:75)(cid:68)(cid:81)(cid:3)(cid:20)(cid:19)(cid:3)
Run Code Online (Sandbox Code Playgroud)

当我查看 PDF 中的确切文本片段时,这些字母肯定可以转换为 ASCII:

pdf相应部分的截图

这可能表明蛮力解码会起作用(读取与一堆 CID 代码对应的文本片段并以这种方式创建映射),但这在许多不同的 PDF 中是否可靠?是否存在从这些 CID 代码到 ASCII 字符的可靠映射,或者是否会高度依赖于 PDF 中的字体?如何确定 CID 代码(cid:72)对应的ASCII 字符是什么?

就其价值而言,我正在使用 PDFminer 提取文本,这似乎是唯一实际报告 CID 代码的工具。如果有更好的工具可以将 PDF 转换为 HTML 或任何其他可解析的文本格式,我愿意接受其他建议!

作为一个额外的好处,这个问题似乎与其他一些未回答的问题有关,因此这里有大量的声誉:

python fonts pdfminer

7
推荐指数
1
解决办法
4523
查看次数

标签 统计

fonts ×1

pdfminer ×1

python ×1