我正在使用CGPDFScanner对pdf页面进行解析。但我找不到每个搜索结果的共同命题。
在空扫描程序(CGPDFScannerRef扫描器,空*信息)中,我只获得了一些单词的坐标,而不是pdf中的每个单词。
我怎样才能找到pdf页面中每个单词的并列形式,例如(x,y)?
发布于 2013-01-12 18:43:10
您严重低估了将PDF转换为文本的复杂性。我也犯了同样的错误,我花了几个月的时间写了一个适用于大多数PDF的文本提取引擎。我的代码是商业的,但只是给你一个想法:
Td、TD、Tm、T*、d0、d1都可以包含文本。(d0、d1用于Type3字体,这种字体不太常见,但Microsoft Word真的很喜欢它们)所以XObjects中的任何对象都可以(也是递归地)。但是您还需要解析字体,因为许多PDF都有CMaps附加到将“随机数字”转换为字符(或字符-PDF也可以有连字)的字体。注意,XObjects也可能包含字体,并且以正确的顺序解析它们非常重要,因为字体可以有父字体。
Adobe's ToUnicode PDF给了你一些如何开始的想法,但只是一个警告,规范是非常不完整的。在官方的PDF参考中有更多的内容,但你仍然会发现一些不应该工作的文档(在查看规范时),但仍然可以工作(当你在Adobe Acrobat中尝试时)。
https://stackoverflow.com/questions/9325675
复制相似问题