Parsing 解析PDF文件

Parsing 解析PDF文件,parsing,pdf,Parsing,Pdf,我发现很难解析用非英语创建的pdf文件。我使用了pdfbox和itext,但在其中找不到任何有助于解析此文件的内容。这里是我正在谈论的pdf文件:pdf文件说它是使用LaTeX和Tikkana字体创建的。我的机器上安装了Tikkana字体,但没有用。请帮我做这件事 谢谢,K当你说“解析PDF文件”时,我的第一个想法是,所讨论的PDF没有在各种PDF查看器和库中打开,因此在某种程度上是损坏的 但事实并非如此。它在AcrobatReaderX中打开得很好。然后我看到页面上的文本 当我复制/粘贴第一页

我发现很难解析用非英语创建的pdf文件。我使用了pdfbox和itext,但在其中找不到任何有助于解析此文件的内容。这里是我正在谈论的pdf文件:pdf文件说它是使用LaTeX和Tikkana字体创建的。我的机器上安装了Tikkana字体,但没有用。请帮我做这件事

谢谢,K

当你说“解析PDF文件”时,我的第一个想法是,所讨论的PDF没有在各种PDF查看器和库中打开,因此在某种程度上是损坏的

但事实并非如此。它在AcrobatReaderX中打开得很好。然后我看到页面上的文本

当我复制/粘贴第一页的文本时,我得到:

目前,若你们方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方埃比 Á

这是读者发来的

此PDF中的大部分文本都是使用各种“Type 3”字体编写的。这些字体声称使用了带有“differences”数组的“WinAnScienceODing”(也称为代码页1252)。此differences数组是错误的:

47/BB 61/BP/BQ 81/C6

第一个数字是要替换的代码点,第二个数字是替换该代码点处原始值的字符的名称

没有像BB、BP、BQ、C9这样的字符名。所以当你复制粘贴文本时,你会得到上面的垃圾

很抱歉,从这样的PDF中提取文本的唯一可靠方法是OCR(光学字符识别)

呃……长远的想法:

如果您可以找到用于生成此PDF的特定字体的特定版本,那么您就可以通过这种方式确定转换为Type3字体的已知字符的实际流内容

一旦您有了这些已知的流,您就可以将它们与PDF中的流进行比较,并使用它们来构建您自己的翻译表

您可以修复现有的PDF文档(通过更改编码字典中的名称并键入3个charproc条目),使这些文本提取器能够正常工作,或者直接从流中提取字节并自己翻译它们

工作流程如下所示:

  • 对于表单中使用的字体中的每个字符:
  • 使用相同的LaTeK/GhostScript版本将其自身呈现为PDF
  • 打开PDF并找到该特定已知字符的CharProc
  • 将该流与用于构建它的已知字符一起存储
  • 对于要解释的PDF中的每个文本字节。
  • 基于现有编码数组获取给定字节的标志符号名称
  • 获取该字形名称的“char proc”流,并将其与已知的char proc进行比较
  • 注意:通过一些缓存,可以将其改写为更高效的方式,但这会让人明白(我希望如此)

    所有这些都需要对PDF和所涉及的解析方法有相当深入的了解。但它可能会奏效。可能不会太