书译
书译

如何打开 DjVu 电子书:先阅读,必要时再转换

了解如何打开 DjVu 电子书、检查页面图像与文本层,并判断是否需要转换为 PDF。内含经测试且可下载的文本层示例。

BookTranslator

BookTranslator Team

17 分钟阅读

要打开 DjVu 电子书,请使用明确支持 .djvu 或 .djv的阅读器,例如 Windows 上的 SumatraPDF 或支持 DjVu 的 Okular。在该应用程序中打开下载的文件,翻看几页,并尝试搜索页面上能看到的一段短语。如果电子书可以直接阅读,完全没必要仅仅因为它使用了不熟悉的扩展名就去转换格式。

请将三个问题分开考虑: 页面能否正常打开?文本层内容是否与这些页面匹配?你接下来要使用的设备或工具是否支持该格式? 我们对一本 251 页的电子书和三个原始示例文件的测试说明了原因:DjVu 文件可能显示完全正常,但完全不包含可搜索的文字——或者包含错误的文字。如果将其转换为 PDF,可能会保留页面图像,却丢掉了其中原本可提取的文本。

本指南适用的前提是你已经拥有合法使用该文件的权限。如需从档案库中获取文件,请参阅单独的 Internet Archive 下载指南.

在兼容的阅读器中打开电子书

Windows:推荐首选 SumatraPDF

SumatraPDF 的支持格式列表 中明确包含 DjVu。请从其 官方网站下载,然后在该软件内直接打开电子书,而不是依赖系统的默认文件关联。

利用其 文档中说明的快捷键 ,你可以快速进行阅读检查:

  1. 按 Ctrl + O 并选择 DjVu 文件。
  2. 使用 Ctrl + 2 适应页面宽度,或使用 Ctrl + 0 适应整页。
  3. 使用 Ctrl + G 跳转到图书中间的某一页;同时检查一下开头和结尾。
  4. 按下 Ctrl + F 并搜索正文页面上可见的一段简短词句。

这些是基于官方文档的操作说明,并非我们亲自执行的 Windows 兼容性测试。SumatraPDF 仅支持 Windows;请勿尝试寻找同名的 Mac 版本下载。

Linux:检查 Okular 是否支持 DjVu

Okular 在其文档格式列表中包含了 DjVu。通过适合您发行版的方式安装它并打开本地文件。KDE 指出,某些安装方式会将不同格式的支持拆分为独立模块,因此仅安装阅读器本身并不能确保所需的 DjVu 组件已存在。如果确认无损的 DjVu 文件无法打开,请参考 官方安装指南 进行排查。

Mac:核对安装包要求,而不仅看应用名称

DjVu 项目将 DjView 记录为一款独立的跨平台查看器,但其下载页面中包含一些较旧的 Mac 安装包。安装前请仔细核对安装包支持的 macOS 版本和处理器架构。KDE 目前将其 Mac 版 Okular 下载标记为 未经测试的每日构建版本(nightly builds),因此我们暂不将其作为经过验证的稳定阅读器进行推荐。

下文在 macOS 上获得的结果均基于本地编译的 DjVuLibre 命令行工具, 而非经过测试的 Mac 图形界面阅读器。如果您找不到兼容的阅读器,且习惯使用命令行工具,下文介绍的有针对性的 PDF 转换方案可作为替代选择。切勿仅为了打开文件而安装陈旧的浏览器插件。

分别检查图像、文本及后续任务需求

请使用副本进行操作,并保留原始文件不变。先检查书名页或章节起始页、中间某一页以及最后一页。放大页面,直至最小的相关文字清晰可读。仅能在第一页正常打开,并不意味着整个文件都通过了检查。

然后搜索一个肉眼可见的短语;如果阅读器支持,尝试将一小段文字复制到纯文本编辑器中。检查一个名字、一个数字和一整句话。搜索失败可能意味着缺少文本层、文本层不准确或阅读器功能受限,这本身并不能证明下载的文件已损坏。

观察到的现象对应的情况建议的后续操作
页面正常显示;搜索结果与复制出的文本完全一致抽检页面完全可用于这些操作直接阅读该 DjVu 文件,除非其他设备或工作流需要不同格式
页面正常显示;但无法提取任何文本图像与机器可读的文本相互独立(仅有图像层)继续直接阅读图像;仅在确实需要文本内容时,再使用 OCR 或其他带文本的版本
页面正常显示;但复制出的文字或数字与画面不符存在文本层,但文字识别结果并不可靠在引用或翻译之前,对照扫描画面校对、修正或替换文本
兼容的阅读器无法打开该文件文件本身或其所需组件可能不完整,或格式不被支持在尝试转换格式之前,先检查源下载文件,并换用另一款兼容阅读器测试

有些 DjVu 文档分散在多个组件文件中,而非打包在单个文件内。DjVuLibre 的 文档编辑器手册 指出,单个页面可能依赖共享数据。如果仅从此类文档中复制出某个单独组件,可能会导致其缺少运行所需的数据。请从源头获取完整的文档;遇到错误并不意味着可以随意丢弃页面,直到剩余部分能打开为止。

页面相同但文本层不同的三个文件

我们制作了两个原始页面,然后将其无损编码为 DjVu 格式。其中一页包含法文文本,包括 café 与 boîte;另一页包含 The parcel contains 18 notebooks. 两者均使用标识符 B-204.

我们制作了三个版本:无文本层、手动插入正确文本以及手动插入错误文本。这些错误 并非 由 OCR 引擎生成。全部六个页面渲染结果(三个文件各两页)与对应的源图像像素完全一致。

下载实际提取的文本视觉上保留的内容
纯图像 DjVu输出为空两个原始页面
文本正确的 DjVu撰写的六行内容,包括 18 notebooks 和 B-204完全相同的原始页面
文本错误的 DjVu13 notebooks 以及 B-2O4,其中的字母 O 被误用来代替数字 0仍然是 18 notebooks 和 B-204

第一个示例是可正常阅读的纯图像文件,并非损坏的下载文件。第三个示例更具迷惑性:它外观与正确版本毫无二致,提取出的文本看似合理却存在错误。因此,能成功选中或提取文本仅仅是一项 存在性检查,而非准确性检查。

对于使用 DjVuLibre 的读者,可以通过以下命令提取文件中已经存储的文本:

djvutxt book.djvu book-extracted.txt

请选择一个新的输出文件名。 djvutxt 手册 中详细说明了隐藏文本的提取机制;该命令并不会从页面图像中重新识别文字。在我们的纯图像样本中,它没有返回任何文本,而完整的文件仍然成功完成了解码。相比之下,一份特意截断的私有副本则直接导致解码器报错失败。

您可以查看 源页面与原始结果 ,并按照其中的 复现脚本 与 操作说明自行运行测试。该实验于 2026 年 9 月 14 日进行,运行环境为 Pillow 12.3.0 和 Poppler 26.08.0。DjVuLibre 官方下载标记为 3.5.30,而编译后的工具显示版本为 3.5.29;压缩包哈希值与报告的版本号均已记录在案。

这是一次受控的文本层演示,并非 OCR 准确度基准测试、阅读器排名或 BookTranslator 翻译测试。

在 251 页《老实人》文件上的实测结果

我们还解码了来自 Internet Archive 条目 candideouloptim01voltgoog的 DjVu 文件,该条目归档为 1759 年出版的法文版 《老实人》(Candide) 。该文件大小为 6,510,150 字节,于 9 月 11 日下载,在我们在 9 月 14 日刷新其元数据时,该文件与源站公布的校验和完全一致。

全部 251 个文件页面 均以最大 600 × 800 像素的尺寸完成了解码。我们还以原生分辨率单独渲染并目测检查了第 1、5、10、125 和 251 页。抽样内容涵盖数字化信息、手写笔记、章节扉页、正文页面以及肉眼可见为空白的末页。

现有的文本层共提取出 207,204 个 UTF-8 字节,包含 246 个分页符。这一统计并不意味着书中缺失了 5 页:图像和文本属于不同的检查维度,而且空白的末页同样提取不到任何文本。此外,提取出的文件体积大也并不代表内容准确。在文件第 10 页中,肉眼可见的单词 Comment 被提取成了 CommcTit.

我们仅将选定的 5 页转换为了 PDF。输出文件共有 5 页,但 Poppler 的文本提取工具未能提取出任何非空白文本。这 并不是 全书的 PDF 转换、全面的校对,也不能证明印刷版图书本身毫无缺漏。 检查记录 与 可复现的命令 完整记录了测试范围以及准确的源文件标识符。

仅在后续流程确有需要时才转换为 PDF

如果这本书在您所选的应用中阅读体验已经很好,到这一步就可以停下了。只有当特定阅读器、打印工作流或文档工具需要 PDF 时才进行转换——不必把它当成每次下载 DjVu 后的固定流程。

在安装了 DjVuLibre 并启用 PDF 输出支持的情况下,以下命令可以转换选定的两个页面:

ddjvu -format=pdf -page=1-2 book.djvu first-two-pages.pdf

在工作目录中运行该命令,并使用一个尚不存在的输出文件名。确认两页都能正常打开,然后将其方向、边缘、小号文字及页数与原版进行对比。如需全书转换,请省略 -page=1-2 参数,并使用另一个全新的输出文件名。我们测试了双页测试样本以及图书中的五页选段,并没有将整本实际图书的每一页都转为 PDF。

关键的局限性正如 ddjvu 手册所述:它的 PDF 输出会将每一页都呈现为图像。在我们 转换生成的两页 PDF中,原始 DjVu 文件中原本正常的文本层并未保留下来。 pdftotext 最终仅返回了两个换页符。

这一结果仅针对该特定转换路径,并不代表所有 DjVu 转 PDF 工具的表现都完全相同。但无论使用哪种转换器,都必须在 输出文件上重新做一次搜索和复制检查,而不能只查源文件。PDF 图标本身并不能保证内容支持文本搜索、具备无障碍结构或属于可重排版式的电子书。

如果您的真正诉求是自由调节字号以及在窄屏设备上获得舒适的阅读体验,请先检查同一版本是否已有现成可用的 EPUB。仅靠修改文件后缀名,是无法将基于图像的 PDF 变成可重排的 EPUB 的。我们的 EPUB 与 PDF 对比指南 详细阐述了阅读时的权衡取舍。

根据实际问题采取恰当的下一步操作

如果只是为了阅读,使用好用的 DjVu 阅读器就足够了。如果只是为了引用,截取一段经过核验的简短文本即可。若转换生成的 PDF 复制出的文字有误,在将其作为源文本之前,请先参考 PDF 文本层诊断指南 进行排查。

只有当语言成为最后的障碍,且你拥有可用文件及相应使用权限时,才需要考虑翻译。 在本指南核对的产品支持列表中,DjVu 并不是 BookTranslator 支持的格式。 直接将其重命名为 .pdf 并不能完成格式转换。

对于真正转换生成的 PDF 文件, BookTranslator 的 PDF 处理流程 是可行的下一步方案。纯图片格式的衍生文件需要进行文字识别:OCR 模式会根据识别出的内容重新构建翻译后的 PDF,而无法完全保证原始页面排版的一致性。我们并未上传或翻译这些示例,因此本指南不代表其实际翻译质量。

请务必保留原始 DjVu 文件以及核对过的参考页面。打开、提取、转换和翻译是相互独立的步骤;在每一步骤中,都请仔细验证所需的结果。

相关文章