当前位置: 首页 > 知识库问答 >
问题:

PDF标准是否提供了一种存储可提取(语义)文本的方法?

宣意致
2023-03-14

如果PDF已经以结构化的方式包含要提取的数据,则会更好。类似于HTML的条纹化版本。特别是对于表,有大量的信息丢失。例如,当您将Word文档转换为PDF,然后转换为文本时。

PDF标准提供了一种存储表结构的方法吗?如果没有,是否可以扩展PDF标准?这个过程是什么?

共有1个答案

伍弘盛
2023-03-14

你正在寻找的,最有可能是标记的PDF。

标记PDF在ISO 32000-1第14.8节中有规定。它们将内容部分标记为段落、标题、列表(和列表项)、表(和表行、标题和数据单元格)等,并使用各种属性。

为此,他们使用PDF逻辑结构工具(参见ISO 32000-1,第12.7节),这些工具又使用标记的内容运算符(参见ISO 32000-1,第12.6节)来标记带有ID的内容流片段,这些ID是从内容流外部的结构树对象模型引用的。

在带标记的PDF中,您可以像XML DOM一样遍历结构树,并利用内容中的ID标记检索相关联的文本片段。

详情请参阅PDF规格ISO 32000-1或其更新ISO 32000.2。

Adobe共享了ISO 32000-1的副本(仅替换ISO标头和引用),只需在web上搜索“PDF32000_2008”。目前它位于以下位置:https://www.adobe.com/content/dam/acom/en/devnet/pdf/pdfs/pdf32000_2008.pdf

 类似资料:
  • 问题内容: 在许多其他语言中,例如。Haskell,很容易多次重复一个值或函数,例如。以获得值的8个副本的列表1: 但是我还没有在Java 8中找到它。Java 8的JDK中是否有这样的功能? 或等效于范围 似乎可以明显替代Java中的冗长语句 有类似的东西 尽管这个示例实际上看起来并不简洁……但是希望它更具可读性。 问题答案: 对于此特定示例,您可以执行以下操作: 如果需要一个不同于1的步骤,则

  • 如果“顺序”由返回节点中的一个或多个节点/属性定义,Saxon是否有方法按排序顺序返回节点? 换句话说,XPath查询可以是: 谢谢戴夫

  • 当创建具有primaryKey的对象时,Realm是否提供了获取/创建主键下一个可用唯一值的方法?(自动递增) null

  • 我有一个Git存储库D:\repositories\temp和一个目录D:\temp1,我希望实现这一点:可以检测目录D:\temp1中的所有更改,并将其提交到存储库D:\repositories\temp(本地和远程)。有可能吗?多谢了。 注意:这里我需要的特性可能与SVN的外部链接类似。

  • 我的问题是: 如何从按列划分的PDF文件中提取文本,以获得由该列分隔的结果? 背景:我从事一个关于文本分析(尤其是科学文本)的项目。这些文本有时以多列布局发布,每列都有单独的页码。要按布局页码对提取的文本进行排序,按列提取文本会很有用。 我使用pdfBox并尝试/搜索了以下内容: 我尝试了类的getThreadBeads()方法- 问题是pdfBox似乎会自动将文本按列划分:如果我将PDFText

  • 目前,我正在使用itextsharp工具(在VB.net中)提取PDF的文本。我希望独立于其他工具/库,因为我无法在我的程序中将它们提供给其他人。 在任何编程语言中是否有一种解决方案(无dll等)可以快速提取PDF的文本?