4 个版本

0.2.0 2023 年 1 月 30 日
0.1.2 2023 年 1 月 7 日
0.1.1 2023 年 1 月 6 日
0.1.0 2023 年 1 月 5 日
0.0.0 2022 年 7 月 23 日

#2223解析器实现

MIT/Apache

140KB
3.5K SLoC

sndjvu_format 是一个用于处理 DjVu 文档传输格式的库。

"传输格式" 是由 DjVu v3 标准定义的规范 DjVu 文件格式。您可以使用此库解析 DjVu 文件或创建一个。格式最低级别的细节已被抽象化,但您仍然需要理解 DjVu 文档的 "块" 级别结构(见下文)才能有效地使用此库。

DjVu v3 文档模型的概述

(本概述不打算替代阅读 DjVu v3 标准的相关部分。)

DjVu 文档可以是 单页多页。单页文档由一个单独的 组件 组成;多页文档由零个或多个组件以及一些元数据组成。

DjVu 组件有三种类型:DJVUDJVITHUM。一个 DJVU 组件表示一页,一个 DJVI 组件存储多个页面之间共享的数据,而一个 THUM 组件存储多个页面的缩略图。单页文档的单个组件必须是 DJVU 类型。

DjVu 文档中的每份数据都包含在一个 中,每个块都有一个类型。大多数块包含在组件中;例外的是包含多页文档元数据的 DIRMNAVM 块。类型为 INFO 的块只能出现在 DJVU 组件的开始位置(在该位置是强制性的);它描述了对应页面的某些基本属性,如像素宽度和高度。除了 INFO 块之外,相同类型的块可以出现在 DJVUDJVI 组件中。这些类型之一的块称为 元素,它描述了与它关联的页面或页面的一个方面(图像数据、OCR 文本、注释等)。

无运行时依赖

功能