如果你手里攒了一批扫描版 PDF——考试资料、旧书、复印件——大概早就习惯了这套流程:在阅读器里打开,看到的是图片;想摘一段,得先开另一个 OCR 工具;识别完再复制回笔记软件,格式全乱。默读(Modu Reader)想解决的就是这一段:OCR 出来的文字不离开阅读器,直接接着划词、翻译、写笔记、喂给 AI。
- 扫描书从打开到能划词,中间具体是哪几步、每步的边界在哪里;
- 「文字重排」「OCR 重排」「提取」三个入口长得像,实际区别很大,选错会白等;
- AI 问答不是把整本书丢给模型,Embedding 和聊天模型各干什么;
- 哪些数据会离开你的设备——这条比功能列表更重要;
- 六个平台的安装门槛,以及从 Anx Reader 迁过来要怎么备份。
它是什么,不是什么
默读是基于 Flutter 的开源跨平台阅读器,仓库在 sobranie2406/modureader,整体按 GPL-3.0-or-later 发布。写这篇时的最新正式版是 v1.3.0(2026-10-20,build 10151),GitHub 上同时放了 9 个安装包和 9 个 .sha256 校验文件,一共 18 个资产。
它跟另外两个项目有关系,但不是什么「换皮版」。按仓库里 UPSTREAM.md 的记录:阅读界面、本地书库、笔记、统计和 WebDAV 底座来自 Anx Reader(MIT,引入 commit 107f4fa);AI 阅读技能、Hybrid RAG、模型配置和 TTS 参考了 ReadAny(GPL-3.0-or-later,参考 commit 021137e);Readest 只被用来参考 S3 设置表单的交互,没有抄代码。三份 LICENSE 都原样留在仓库的 LICENSES 目录里。
需要先打消一个常见误会:它不是 Calibre 的开源替代品。Calibre 的重心在桌面书库管理、格式转换和元数据整理;默读的重心在「一本书打开之后」——裁边、OCR、划词、AI、听书、跨设备同步。两者不冲突,也别指望用一个替另一个。
还有个前提:不配置 AI 也能正常用。本地阅读、OCR、笔记、同步都不要求注册任何账号。项目本身没有内购和订阅,接入在线 AI、翻译或语音后的费用由你选的服务商决定。
安装:六个平台,门槛不一样

v1.3.0 的 9 个包覆盖 Android、iOS、macOS、Windows、Linux 和原生鸿蒙。但「有包」和「能像商店软件一样装上」是两件事,官方文档把话说得很直:文件名里不带 unsigned/unnotarized 后缀,不代表它就有签名或公证。
| 平台 | 包体 | 安装门槛 |
|---|---|---|
| Windows | x64 / ARM64 EXE | 需要 WebView2 Runtime,安装包不自动下载;无商业 Authenticode 签名;VC++ CRT 已打进包 |
| macOS | x64 / ARM64 DMG | ad-hoc 临时签名,未做 Apple 公证,未上架 App Store,首次打开会有系统提示 |
| Linux | x64 / ARM64 DEB | 面向 Debian 13 (trixie),依赖 GTK3、WPE WebKit 2.0、libwpe、epoxy、GStreamer 及音频插件 |
| Android | arm64-v8a APK | 最低 API 26;项目专用密钥签名,升级必须沿用同一密钥;不发布 x64 包 |
| iOS | ARM64 IPA | iOS 16+;无 Apple 分发签名,应用和分享扩展都要你自己合法签名 |
| 原生鸿蒙 | ARM64 HAP | 未签名,需鸿蒙证书与 Profile 手动签名;安卓签名不能通用;官方注明尚未完成真机验证 |
不走商店渠道装,第一件事是核对校验值。每个安装包旁边都有同名 .sha256 文件:
# Windows PowerShell
Get-FileHash .\Modu-1.3.0-windows-x64-setup.exe -Algorithm SHA256
# macOS / Linux
shasum -a 256 ./Modu-1.3.0-macos-arm64.dmg
把输出和 Release 页面里的值逐字符对一遍,再谈安装。顺手记两条:覆盖升级前先备份,不要先卸载或清数据;安卓换签名密钥等于换应用,历史数据不会跟着走。
第一次导入:书架与远程书库
书架右上角「导入书籍」可以选文件或文件夹,桌面端直接拖进去也行。支持的格式是 EPUB、PDF、MOBI、AZW3、FB2、TXT、.md/.markdown、文字 UMD,以及扫描图片书。几个容易踩的边界:
- TXT / Markdown 导入时会转成 EPUB,之后走统一的阅读、笔记和同步流程,原文件不改。Markdown 不运行 Mermaid、LaTeX 或脚本,相对路径的图片不会自动去读相邻目录,图文书建议先打包成 EPUB。
- 文字 UMD 后台转 EPUB,文件上限 64 MiB、解压文本上限 32 MiB,暂不支持图片/漫画 UMD。
- 「远程书库」不是同步。它在设置里连一个独立的 WebDAV,用来浏览、下载、勾选导入远程文件夹,不修改服务器上的书,取消连接也不影响已导入的书。
书架本身支持文件夹、批量移入、标签、置顶。有个细节值得知道:书架上出现一个条目,不等于这本书的正文已经在本地。同步先过去的是元数据和封面,正文是第一次打开时才下载的。
普通文字书:排版与阅读设置
扫描书之前,先说一下普通书这一侧,因为两套菜单是分开的——PDF 和已判定为扫描版的书用原版控件,普通文字书继续用自己的字体行距面板,互不干扰。
「样式」里能调字体、字号、粗细、模拟加粗、行距、段距和背景;「更多设置」管边距、横排/竖排和翻页行为。可以导入 TTF/OTF 字体,实际字重取决于字体文件支持到什么程度。中文字体旁边的「原文 / 简体 / 繁体」只转换显示,不改写原书。MOBI 的旧式注释列表和上标图标会恢复成弹窗,AZW3 补齐注释语义。
| 设置 | 初始值 / 范围 | 说明 |
|---|---|---|
| 字体粗细 | 0.5–2.0,步进 0.1 | 按字体支持显示,固定字重可试模拟加粗 |
| 滚动翻页比例 | 默认 80%,可设 80%–100% | 控制一次滚动翻页的移动量,不限制连续手动滚 |
| 仅点击翻页 | 默认关 | 移动端避免滑动翻页,仍可选词和连续滚动 |
| 长按选择整段 | 默认关 | 默认自动匹配词语,打开后仍可调选择手柄 |
| 阅读亮度 | 默认跟随系统,手动 0–100 | 安卓调窗口亮度,其他平台应用内调暗 |
| E-Ink | 默认关 | 关掉过渡和动态效果,用适合墨水屏的实色界面 |
桌面和安卓接实体键盘的话,可以给翻页、菜单、播放/暂停(共用键,默认 P)和上一段/下一段绑键,支持多个绑定、冲突检查和恢复默认,按键配置参加阅读设置备份。
扫描书主线:从原页到能划词

导入时怎么判定「扫描版」
PDF 直接走原版阅读控件。EPUB、MOBI、AZW3、FB2 会在导入时做一次抽样识别:最多抽 5 个正文 section,排除封面、目录和非正文部分,看的是图/文证据,不是文件扩展名,也不是 fixed-layout 标记。判定结果按书和来源指纹缓存,打开书时只读缓存,不重新抽样、不重算哈希。识别不确定或失败就按普通文字书处理,你也可以在书架菜单里手动改成扫描版或改回普通阅读。
换成源文件会让旧判定失效,需要重新来一次。老书如果没分类,手动纠一下就行。
裁边、分格与图像增强:只作用于显示
扫描书打开后用的是专用阅读菜单,跟普通文字书的字体行距控件不是一套。原版页面提供适屏、适宽、100%–1500% 缩放、旋转、移动视口、单页和连续卷轴。
裁边和分格是分开的两件事。裁边支持自动和手动,作用范围可以按页、按书、按奇偶页;分格有 7 种布局(单页、横二、竖二、四格、横六、竖六、九格)和对应的阅读顺序,多格时先在本原页内推进,再翻下一页。自动裁边逐页识别内容边界,可以加保护留白——建议留一点,别把页码和脚注切掉。
图像增强五项,边界都写在文档里:
| 增强项 | 范围 | 说明 |
|---|---|---|
| 文字加黑 | 0–15 | 笔画增强 |
| 对比度 | −100 ~ 100 | 对比映射 |
| 加黑(暗部) | 0–100 | gamma / 暗部增强 |
| 漂白 | 0–200 | 背景清理 |
| 锐化 | 0–100 | 边缘锐化 |
下载 OCR 模型
「设置 → 模型设置 → OCR 模型」里选模型和下载源。模型不内嵌安装包,也不随启动偷偷下载,只有你点了才下,下完按大小和 SHA-256 校验后使用。
| 模型 | 下载体积 | 上游 | 备选 |
|---|---|---|---|
| PP-OCRv4 中英文(推荐) | 14.9 MiB | Hugging Face | Gitee |
| PP-OCRv5 中英文轻量 | 20.5 MiB | ModelScope | Gitee |
| PP-OCRv3 中英文 | 12.5 MiB | Hugging Face | Gitee |
| PP-OCRv3 英文 | 10.9 MiB | Hugging Face | Gitee |
Gitee 镜像在 sobranie2406/modu-models,OCR 资产挂在 ocr-v1 release 下。国内网络下不动的时候换源试试,换源不改变修订版本、维度和索引格式,已下好并通过校验的文件能直接复用。下载体积不是推理峰值内存,别拿 14.9 MiB 去估占用。
三个入口:文字重排 / OCR 重排 / 提取
这是最容易混的一处。三者都在 PDF/扫描书的底部工具栏,但做的事不一样:
| 入口 | 文字来源 | 处理范围 | 结果去哪 |
|---|---|---|---|
| 文字重排 | 当前页已有文字层,必要时才用本地 OCR | 当前原页,或裁边界内的整页 | 阅读区内可直接选字 |
| OCR 重排 | 强制本地识别,不看有没有文字层 | 同上 | 阅读区内可直接选字 |
| 提取 | 手动框选区域,也支持整页 | 只有它打开区域选择器 | 填进 AI 输入框,不自动发送 |
两个关键点。第一,重排的处理范围是「当前原页」或「裁边界内的整页」,不是你现在放大的那个视口、也不是某个分格——以为只识别一小块所以会很快,这个预期是错的。第二,「提取」是唯一会把文字送进 AI 输入框的入口,但它只填框,发送要你自己点,页面图片和模型下载都不会跟着一起去 AI 服务。
识别在独立的 Dart isolate 里跑,安卓原生推理走专门的串行后台队列。单次任务有输入上限:2MP 像素、检测长边 960、最多 300 个文本区域。点「停止」会取消当前识别并丢弃结果,已校验的模型文件留着下次离线用。
顺带说下 v1.3.0 的两个新东西:已保存的书籍文字可以按原页码导出 TXT 或 Markdown(优先用校对稿);重排页支持只翻译当前原页,可以仅译文或原译对照,复用划词工具栏的查询、复制、AI 和本页选词朗读。
速度与准确率的边界
开发文档里留了一组单次本地开发构建的采样:灰底英文样本约 0.7 秒,一份真实中文扫描约 2.9 秒。这是单机单次样本,不是跨平台承诺,你的设备、页面复杂度、有没有开裁边都会让它变。
准确率方面,官方一句话说得比任何宣传都实在:OCR 不是「全书一键无损转换」。小字、模糊页、复杂分栏、竖排、表格和反色页都不保证忠实还原,姓名和数字尤其容易错。复杂分栏需要手动框一栏。重要内容请对照原图核——这也是为什么「提取」只填框不自动发送。
AI 问答:Hybrid RAG 其实是两步

很多人对「阅读器里的 AI 问答」的想象是:把整本书丢给模型,然后问什么答什么。默读不是这么做的,它分两步。
第一步,Embedding 负责找。「设置 → 模型设置 → 向量模型」里默认启用本地模式,默认模型 BGE Small ZH v1.5,另有 BGE Small EN、all-MiniLM-L6-v2、Multilingual E5 Small,也可以配远程 embeddings 服务。给一本书建索引的入口在书架里的书籍菜单——「向量化 / 重新向量化」,自动索引用同一条后台队列。
第二步,聊天模型负责答。模型拿到检索出来的原文片段,再生成回答。这就是为什么跨章节提问比「只把当前页扔给 AI」靠谱:相关段落是被找出来的,不是靠模型背。
索引的硬上限也记一下:单文件 1 GiB、单条记录 2 Mi 字符、25 万个 chunk、8192 维。检索时 chunk 和向量还是要载进内存,所以文件上限不等于低内存设备能用。
提问时到底发生什么
不同功能取的上下文范围不一样,搞混了就会对结果产生错误期待:
| 功能 | 实际拿到的文本 |
|---|---|
| 书内自由问答 | 当前书有效索引里的关键词/语义相关片段 |
| 首页书籍问答 | 工具先确认书籍 ID,再检索该书索引;需要模型支持工具调用并启用 |
| 本章总结 / 概念解析 / 论证分析 / 金句摘录 / 阅读指南 / 词汇助手 / 思维导图 | 选文或当前章可取得的正文,不混入其他章的检索片段 |
| 智能翻译 | 仅选中文本 |
| 全书总结 | 沿目录取章,复用有效索引文本并补取缺失部分,压缩到上下文预算,不等于逐字读完全书 |
| 人物追踪 | 已读章节的索引文本 + 当前章截至阅读位置;取不到已读范围就停,不偷偷换成整章 |
思维导图可以全屏、缩放、平移、展开收起,导出 PNG、SVG、Markdown、FreeMind、JSON。AI 生成的引述、人物事实和来源仍然要自己核。
哪些内容会离开本机
这条比功能列表重要。按官方文档的离线/联网速查:
| 场景 | 联网行为 |
|---|---|
| 已下载书籍阅读、笔记、本地字典 | 本机(书内远程资源和你开启的脚本/CSS 另算) |
| 本地 OCR / 本地 Embedding | 只有下载模型需要网络,推理在本机 |
| 在线 AI 问答 | 相关正文片段发给你配的服务 |
| 远程 Embedding | 建索引时文本发到远程接口,可能收费 |
| 在线翻译 / 在线语音 | 选中文字发给对应服务 |
| 选词搜索 / AI 知识联网搜索 | 查询词发到搜索站点或词典/百科 |
| 同步 | 同步范围内的数据发到你配的 WebDAV / 对象存储 |
结论很直接:「本地 Embedding」不代表「AI 问答离线」。索引用本地模型建,提问时相关片段照样会发给你配的聊天服务。想完全离线,就得聊天模型也配本地的。
还有一件相关的事:向量索引只留在本机,不参加 WebDAV / S3 同步,换设备自己重建。以前云端可能残留旧索引,位置在 WebDAV 配置目录下的 modu/knowledge-v1,要清理就只删这个目录,别动书文件夹和同步数据库,并且先在老客户端上关掉索引同步,防止它再传一次。
划词工具栏、本地词典与翻译
选中正文后的工具栏可以在设置里开关按钮、拖动排序,还能给 AI 划词命令改名字、图标和提示词。每个 AI 划词命令能选「结合上下文」或「仅选中文字」,以及是否联网。「技能模板先填入输入框」默认关闭,点模板直接发送;打开后先编辑再发。
离线查词这块做得比想象中深:「设置 → 自定义字典」支持导入 MDX 1/2、StarDict 配套文件,或含一部字典的 ZIP。MDX 保留原版 HTML,可以配 MDD 和本地资源,原版图片、音频直接内嵌显示;音频要主动点才播,原版视图和外部网络隔离。MDX 3、LZO、加密记录不支持。查询在本机进行,不会自动改用在线翻译,字典数据也不参加书库同步和当前备份。查启用字典没命中时会注明「词典名 · 无条目」。
翻译可选 Google 翻译(免费)、AI、DeepL/DeepLX,以及 Google / Bing / 百度 / 有道网页。网页引擎用于选文;全文翻译走 Google 免费、AI 或 DeepL,别把网页窗口误当成逐段全文翻译。全文翻译在书页展示原文+译文或仅译文,不是导出整本译书。「选中文本后自动翻译」默认关闭。
CSS 方案与正则高亮
CSS 和正则高亮放在同一处管理:「设置 → CSS 设置」提供命名方案、图形参数、自定义代码和正则高亮,一共 32 个方案位置。打开总开关和需要的方案就能多套组合,当前书可以跟随默认组合或独立选择。新增、复制、导入的方案默认关闭,导入占用空位而不直接覆盖——改共享方案会影响所有用它的书。
两条边界:正则高亮是显示规则,不是保存的笔记或批注;CSS 不改写源书。CSS 里引用的远程字体或图片可能联网,效果受阅读内核和原书样式影响。
顺带一句:Markdown 导入转 EPUB 时不运行 Mermaid、LaTeX 或脚本,完整图文书建议直接打包成 EPUB。分章规则、文件校验值管理、日志、网络代理和 JavaScript 开关都在「设置 → 高级」里,启用脚本前先确认书来源可信。
听书与在线朗读参数
朗读提供系统语音、Edge TTS、DashScope、Xiaomi MiMo 和 OpenAI 兼容语音。系统 TTS 只接入 Android、iOS、macOS、Windows,Linux 和 OpenHarmony 要主动选一个支持的在线服务。在线音频最高 4×,2× 之后是 3×、4× 档位。
在线朗读的缓冲参数在「设置 → 朗读 → 在线朗读缓冲与缓存」,默认值和可选值都列一下:
| 参数 | 默认 | 可选值 |
|---|---|---|
| 提前缓冲量(段) | 3 | 0、1、3、5、8、12 |
| 单次合成字数上限 | 240 | 100、240、400、600、1000、1500、2000 |
| 预合成并发数 | 2 | 1、2、3、4 |
| 段落停顿(毫秒) | 0 | 0 ~ 3000,八档 |
| 缓存保留(分钟) | 10 | 0、5、10、30、60、120 |
音频只走内存缓存,上限 32 MiB,退出不保留。前四项停止后重新开始才生效,暂停/继续保留当前会话参数。调高预合成和并发会增加用量或触发限流。想深入可以看站内那篇 开源 TTS 十个工具横评。
同步:WebDAV 与 S3 兼容对象存储

同步不需要注册它自己的云账号。WebDAV 是默认选项,填上级地址、账号、密码,数据放在它下面的 modu 目录,地址末尾不要再加一层 /modu。从 1.2.2 起还能选 S3 兼容对象存储,当前同步协议是 v9。
配一个 S3 兼容存储
预设覆盖八类加一个自定义:Amazon S3、阿里云 OSS、腾讯云 COS、Cloudflare R2、雨云 ROS、七牛 Kodo、百度 BOS、火山 TOS,以及 MinIO 等自定义 S3 兼容地址。要填的是 Endpoint、Region、Bucket、同步前缀、AccessKey 和 Secret,默认前缀 modu,大小写敏感。
最容易填错的三处:用 S3 兼容端点,不要用控制台网址或公开下载链接;端点通常不含桶名和对象路径;腾讯云 COS 的桶名带 APPID。高级设置里有临时会话令牌、path-style / virtual-host / 桶绑定自定义域名、签名 V4/V2、列举 V2/V1 和明文 HTTP opt-in,优先 HTTPS。
「测试连接」会在你配的前缀下创建、下载、校验再删除一个唯一命名的探针,不会清空桶,也不会靠覆盖书库数据库来测试。保存后再打开云同步,其他设备用同一个桶和前缀。华为 OBS 目前没有预设,官方规则禁止 path-style,兼容性还要再验。
权限按最小给:自建私有桶,给 key 前缀内的列举加上该前缀下对象的读、写、删,公开访问没必要。配置存在本地偏好里,不是系统钥匙串;书籍和记录不会由 Modu 自动加密落地,需要的话开服务端加密。
会同步的与不同步的
同步是记录级合并,不是把整个数据库上传或替换。SQLite 仍是云端容器,但只有允许同步的记录会被搬运。以 WebDAV 为例,服务器上长这样:
modu/
├── database8.db # 可靠 ETag 服务器的主容器
├── record-log-v1/ # ETag 不可靠时的内容寻址日志
│ └── <首位哈希>/<SHA-256>.db
└── knowledge-v1/ # 旧版向量索引残留,可清理
合并规则:书籍按稳定标识关联,元数据跟随操作时间,保留本地整数 ID;笔记、书签、高亮有独立标识,同一条记录按操作时间裁决,删除保留墓碑;阅读位置看最近一次真实操作,往回读也会同步过去,不会自动挑读得最远的位置;新增阅读时长按独立事件去重聚合。
时间戳相同的情况用持久随机操作修订号确定性裁决。并发保护上,可靠写入用强 ETag 的 If-Match,首次创建用 If-None-Match: *,412 就重新下载合并,最多三次,绝不无条件覆盖;ETag 不可靠的服务器走内容寻址的记录日志通道。单文件上限 5 GiB,没有实现分片上传和断点续传。签名请求不跟随重定向——遇到跳转是端点填错了,别把凭据转到新主机。
备份不是同步
三样东西别混:
- 全局设置备份:JSON 或 modu 链接,可选模块。恢复的是文件里的设置,不迁移书籍、笔记、聊天和进度。默认不含账号、密码和 API Key;打开凭据选项后 JSON/链接能还原出明文,要私密保存。
- 本地书库备份:设置 → 同步 → 数据库备份,ZIP 含本机正文、封面、字体、背景、数据库、AI 历史和一般设置。恢复会替换现有书库,不是合并。数据库备份管理最多保留 3 份合并前的本地快照。
- 同步:用于多台设备之间保持一致。
所以「同步开着」不等于「有备份」。恢复本地书库前先下载所有要保留的正文、等同步和向量任务结束、备份现状,导完完全关闭再重开。带账号或 API Key 的备份文件,别分享到公开位置。
从 Anx Reader 迁移
入口在「设置 → 高级 → 导入 ANX Reader 的备份文件」,只认 ZIP。步骤是:在 Anx Reader 里下载要迁的书、停止阅读、等同步完成,然后从它的「设置 → 同步 → 导出和导入 → 导出」拿一份完整 ZIP,不要解压不要改,放到跑默读的设备上选它。
能过去的是:已下载的书和封面、笔记/高亮、阅读位置、阅读时长、文件夹和标签。过不去的是:已删除的书、正文缺失的书(会按标题列出来)、应用设置、账号密码、API Key、同步配置、AI 聊天、独立字体/主题/背景。
几个保护机制值得知道:导入前会自动创建当前数据库快照,放在数据目录 import-backups/before-anx-<unique-id>.db;只认 ANX 的 schema 7,独立 DB、加密 ZIP、未知 schema/触发器、默读自己的数据库一律拒;重复导入按文件 MD5 去重,匹配的书保留默读当前进度和文件夹,已有笔记的编辑/删除状态优先。解压和校验在临时目录做,每个 DB/WAL 限 256 MiB、每表 20 万行、ZIP 展开限 20 GiB 和 10 万条目。这是一次性迁移,不是两个应用之间的持续同步。
和 Anx Reader、KOReader、Calibre 怎么选

| 名字 | 定位 | 什么时候先看它 |
|---|---|---|
| Anx Reader | 默读的底座,MIT | 已经在用,只想知道默读多了什么、怎么迁 |
| 默读 Modu | 扫描书 + AI + 同步 | 扫描资料多,想把 OCR、AI、同步收进一个阅读器 |
| KOReader | 老牌,墨水屏优先 | 主要在 Kindle、Kobo 上看书 |
| Calibre | 老牌,桌面书库 | 重心是管理、转换、元数据整理 |
一句话:想找「Calibre 的开源替代品」,默读并不准确;扫描书多、又想把 OCR、AI 和同步收进一个阅读器,它才合适。许可上留意一下:上游 Anx Reader 是 MIT,默读整体按 GPL-3.0-or-later 发布,自己下载安装不影响日常使用,但要改源码、重新分发或塞进商业产品时,去读 LICENSE、NOTICE 和 UPSTREAM.md。
适合谁,不适合谁
- 手里扫描版 PDF 多,希望 OCR 后还能划词、记笔记
- 想在阅读器里直接做 AI 问答和跨章节语义检索
- 愿意自己选 AI、Embedding、翻译、TTS 服务
- 同时用 Windows、Mac、Linux、Android 或 iPhone
- 家里已经有 NAS、WebDAV 或对象存储
- 只看普通 EPUB,需求就是翻页和基础排版
- 希望全部功能开箱即用,不想配 AI 或同步
- 必须走官方应用商店安装
- 不想处理 iOS 签名、macOS 未公证这类事
- 只需要桌面书库管理和格式转换
要迁整个书库过去,先拿几本 EPUB 和扫描 PDF 试 OCR、排版、同步和 AI,再决定。
排障:十个常见问题
安装与启动
Windows 打不开或白屏。先确认装了 Microsoft Edge WebView2 Runtime,安装包不会自动下载它。macOS 提示「无法打开」。DMG 是 ad-hoc 签名、未公证,需要在系统设置里放行;别照着网上的建议去全局关保护。如果是在应用内升级后出现「creation without user consent」类日志,正确做法是重新用浏览器下载官方 DMG 覆盖,不要复用旧缓存、不要清书库。Linux 装完起不来。包面向 Debian 13,缺 GTK3、WPE WebKit 2.0、libwpe、epoxy、GStreamer 及音频插件都会有问题。
OCR 与重排
点了重排没文字。原图没有文字层、又没下 OCR 模型,或者模型没下完。先用「文字重排」,它会优先用已有文字层、必要时才调本地 OCR;要强制识别用「OCR 重排」。比预期慢。重排处理的是当前原页或裁边界内的整页,不是放大视口;单页 2MP、检测长边 960、最多 300 个区域都是硬上限。识别错得多。小字、模糊、复杂分栏、竖排、表格、反色页都不保证,复杂分栏手动框一栏,重要的对照原图。
AI、索引与同步
问答结果不像来自这本书。看功能取的是什么范围:本章总结只拿选文或当前章,全书总结是压缩到上下文预算,都不是逐字读完全书。换模型后检索变差。重新向量化,模型不匹配时会回退关键词。同步不生效。确认云同步开关真的打开了(自动同步初始开,但云端连接初始是关的);WebDAV 地址末尾别多加 /modu;换后端前先关同步等任务完成,两套连接分别保留,切换不会自动搬迁旧云端书籍。提示 429/503。尊重 Retry-After,坚果云同机同账号有半小时 480 次预算。
老客户端混在新环境里。新容器是 modu/database8.db,没有它时会读 database7.db、迁一份临时副本再和本地记录合并,旧文件不被覆盖也不删除。参与同步的设备尽量升到支持 database 8 的版本,升级前先把每台设备和服务器上的 modu 目录备份一遍,并暂停老客户端的自动同步。老数据库没有逐次阅读事件和完整删除历史,老版本的时长只能取同书同日两侧较大的累计值,丢掉的笔记和删除记录补不回来。
书架有条目却打不开正文。这是设计如此:元数据和封面先同步,正文第一次打开时才下载。想离线看,先在有网的设备上把书打开一遍。
更新、存储与反馈
检查和下载共用同一个来源选择器,默认 GitHub,连不上会自动试 Gitee;手动切到 Gitee 就直接走镜像。两站提供相同安装包和 SHA-256,应用内下载安装前会再校验一次。macOS 是例外:DMG 走浏览器下载,不进应用沙盒缓存,所以应用无法报告浏览器那边的完成情况和哈希校验,得自己核。
「设置 → 存储」能看占用并清理可再生成的临时数据,但模型、书籍和已完成的索引不属于普通缓存,别一键清完以为在省空间。「问题反馈与功能建议」只有 Bug 和功能建议两类,填复现步骤、预期/实际结果、版本和平台,预览后打开 GitHub 提交。崩溃诊断默认不附带、不上传;勾选后提供的是已脱敏的错误和检查点,不是全部日志。GitHub issue 是公开的,别放私人书籍或凭据。
最后提醒一句自己核对版本的习惯:这个项目迭代很快,写这篇时是 v1.3.0,平台矩阵、安装包和功能边界都可能已经变了。每次升级前先备份,不要先卸载或清数据。
站内相关
- Wereadscan:扫描「微信读书」已购图书并下载本地 PDF —— 另一条把已购书变成本地文件的思路。
- 开源 TTS 从零开始详细教程:10 个配音工具怎么选 —— 想给默读的听书配一套自己的语音,可以对照着看。
- 34 种行业分类电子书大全(EPUB 格式) —— 找测试用书的现成资源。
版本、安装包和平台支持更新很快。下载前请以 GitHub Releases 和 Gitee 镜像 的最新说明为准;功能边界以仓库 docs 目录下按代码核对的文档为准。







-Featured-Image240916-300x200-1.jpg)
















暂无评论内容