如何将 PDF 中的文本提取为 JSON 格式

一些 PDF 文件是"带标签"的,意味着它们包含关于文件结构的信息。这种结构作为元数据嵌入在 PDF 中,由一系列标签组成,用于标记诸如标题、段落、列表、表格和图像等元素。

这非常类似于 HTML,其中的文本包含在具有语义意义的元素中,例如表示段落的 <p> 或表示表格的 <table>。

如果 PDF 文件确实包含结构化内容(也称为标记内容),那么它就可以被处理并转换为其他格式。

什么是 JSON?

JSON(JavaScript 对象表示法的缩写)是一种轻量级、基于文本的格式,用于在系统之间存储和交换结构化数据。

它以键值对和数组的形式表示数据,使得机器和开发者都能轻松读取和编写。JSON 被广泛用于 Web 应用中,在服务器和客户端之间传输数据,而且被大多数编程语言原生支持。

尽管起源于 JavaScript,但 JSON 是一种语言无关的格式,已成为 API 和软件系统中通用的数据格式。

PDF 与 JSON 的区别

这两种格式有着截然不同的用途。PDF 保留了文档的固定视觉布局,非常适合用于分享可供打印的内容,例如报告、合同和官方文档。它被广泛应用于需要在不同设备间保持外观一致性的场景中,是最受支持的文档格式之一。

相比之下,JSON 不是为展示而设计的,而是为了数据交换和存储。JSON 通常用于 Web 开发、API 和软件应用中,用于在服务器和客户端之间发送结构化数据,如用户资料、设置或实时内容。

JSON 可以直接被文本编辑器(如 Visual Studio Code)导入,而不影响其结构;但 PDF 文件则不具备这样的灵活性。由于其结构化的特点,JSON 也更适合被像大型语言模型这样的 AI 技术抓取和理解。

将结构化 PDF 文件转换为 JSON

我们最近在 JPedal 中添加了 PDF 转 JSON 的支持。如果你的 PDF 文件包含结构化内容(怎么知道呢?),那么 JPedal 可以使用以下代码片段将其转换为 JSON:

ExtractStructuredTextProperties properties = new ExtractStructuredTextProperties();

properties.setFileOutputMode(OutputModes.JSON);

ExtractStructuredText.writeAllStructuredTextOutlinesToDir("inputFile.pdf", password, "outputFolder", null, null);

了解更多有关带标签 PDF 的信息
了解更多关于 JPedal ------ 我们强大的 PDF 工具包

本指南演示了如何使用几行 Java 代码将结构化的 PDF 文件转换为 JSON 格式。同时,它还介绍了 PDF 和 JSON 之间的关键区别,帮助你判断哪种格式最适合你的需求。

想要更深入了解 PDF?请阅读我们的其他文章 ------ 我们已经专注这一格式超过十年!

我们的主页:PDF 转 HTML5、Java 图像库、Java PDF SDK - IDRsolutions

相关推荐
BLUcoding16 分钟前
接口服务公网超时排查记录:SecureRandom 阻塞问题分析与解决
java·linux·springboot·aes·securerandom
yuniko-n32 分钟前
【JUC】Lock 和 synchronzied 锁
java
西柚小萌新39 分钟前
【LLM&&AI应用开发 八股文】--4.3.Agent智能体(下)
java·开发语言·数据库
北极有牛41 分钟前
cpp学习笔记--常量指针
java·开发语言·算法
java资料站1 小时前
二、Spring AI Alibaba · ChatModel
java·windows·spring
十年Java程序媛1 小时前
Java 接口和抽象类对比|Java8 新特性,抛弃老旧八股,正确选型
java·spring boot·后端
caoerzhong1 小时前
JeeWMS 开源 WMS 部署避坑指南:Java 仓库管理系统的环境基线、四类根因与可复现交付
java·开发语言·开源
用户3721574261351 小时前
Java 合并 PDF 文件:完整合并、指定页面合并与流合并
java
sbjdhjd1 小时前
云安全 | Docker 容器逃逸复盘(三):docker.sock 挂载与 Docker-in-Docker 风险
经验分享·网络安全·docker·云原生·容器·kubernetes·云安全
z775088542 小时前
冷链仓储的数据断链怎么解?感知、平台与对接的技术拆解
经验分享