5 分钟把 KOReader 装进电纸书:从 PDF 重排到插件的完整实操
【免费下载链接】koreaderAn ebook reader application supporting PDF, DjVu, EPUB, FB2 and many more formats, running on Cervantes, Kindle, Kobo, PocketBook and Android devices项目地址: https://gitcode.com/GitHub_Trending/ko/koreader
打开扫描版 PDF,字小到怼脸也看不清?KOReader 能把这类文档重排成字号可调的流动文本,还能在 Kindle、Kobo 等电纸书上跑。这篇带你 5 分钟装好它,从开机到读第一本书。
KOReader 安装前先确认你的设备在不在支持名单
动手前先花 30 秒判断"我能不能用"。打开仓库里的 frontend/device/ 目录,每个子目录就是一个受支持的平台:
| 设备类型 | 判断依据 | 说明 |
|---|---|---|
| Kindle(PW、Oasis 等) | frontend/device/kindle/ | 含按键映射文件,旧款物理键盘机型也能用 |
| Kobo(v4 / v5) | frontend/device/kobo/ | 注意区分 v4 和 v5,后面装包要用对 |
| PocketBook | frontend/device/pocketbook/ | 直接装 .app 文件 |
| reMarkable | frontend/device/remarkable/ | 额外带一个 systemd 服务文件 |
| Android | platform/android/ | 装 APK,不涉及刷写 |
| Linux / 桌面 | platform/linux/ | 桌面包,也可跑模拟器 |
make/ 目录下还有 kindle.mk、kobov4.mk、pocketbook.mk 这类构建目标文件,能帮你确认官方为哪些具体机型做过构建。各平台的启动脚本统一放在 platform/ 下,装完就是靠它们把应用拉起来。
你的设备型号在上述目录里能找到对应适配代码,基本就稳了;一个都找不到,就别往下走了。
KOReader 安装步骤:从拿到包到第一次开机成功
走完下面 4 步,你的屏幕上应该出现 KOReader 的界面,而不是回到系统菜单。
- 拿到对应平台的发行包。想从源码构建的话,执行
git clone https://gitcode.com/GitHub_Trending/ko/koreader,再按 doc/Building.md 搭本机模拟器。 - 把平台启动文件拷进设备:Kobo 一般放 /mnt/us,Kindle 放设备根目录,以你下载包里的说明为准。
- 通过设备入口运行 koreader.sh。Kobo 装完后,系统桌面会多出一个 KOReader 启动项,直接点;PocketBook 装 .app 文件后自动出现在书架。
- Android 直接装 APK;Linux 解压桌面包运行。
成功信号:屏幕停在 KOReader 的欢迎/快速入门画面,不再弹回系统菜单。
最容易卡住的一步是第 2 步拿错包:Kobo 分 v4 和 v5 两代,Kindle 分老款(legacy)和新款,固件年代不同走的构建目标不一样。拿错的症状很典型——一启动就闪退回系统菜单。九成是包拿错了,回上面那张表按 platform/kindle/、platform/kobo/ 的目录名核对一遍。
KOReader 安装后的第一次使用:先认清触摸分区
装完第一件事是搞懂手指点哪、屏幕发生什么,这样不翻菜单也能翻完第一本书。KOReader 首次启动会生成一份内置快速入门指南,由 frontend/ui/quickstart.lua 自动生成,里面就是下面的分区图加快捷键说明,照着点就行:
默认逻辑:点屏幕中央翻下一页,点最左一条回上一页,点最上边弹顶部菜单,最下边是状态栏和底部菜单,四个角是独立的角落点按区。带键盘的设备另有按键映射,比如 Kindle 旧款的默认行为写在 frontend/device/kindle/event_map_keyboard.lua 里,翻页、跳目录都可以按自己习惯改。
KOReader PDF 重排:把扫描版变成大字
⬇️ 这是 KOReader 相对内置阅读器最立竿见影的一招,前后对比放这里。
- 用之前:扫描版 PDF 是整页图片,字小得看不清。你能做的只有放大、拖动,一页挤不下十行字,设备得怼在脸上。
- 怎么操作:打开这本书后从顶部菜单进"重排"(re-typeset)。背后是内置的 K2pdfopt 引擎,入口代码在 frontend/document/koptinterface.lua:识别文档版式 → 提取文字 → 按你选的字号重新排成流动文本。字号、行距、页边距、字体,全部在 frontend/apps/reader/modules/readertypography.lua 对应的排版菜单里调;字体文件拷进设备即可用,加载逻辑在 frontend/ui/font.lua。
- 用之后:同一页从"只能看几行的图片"变成字号可调、行距可调、还能加连字符断行的普通书本文本,阅读体验接近原生 EPUB。
漫画、双栏这类固定版式不用硬掰:阅读方向选项里有双页和条漫翻页模式,直接选对应的方向即可。
KOReader 插件怎么选:高频插件对照表
想让设备从阅读器变成随身工具箱,看这张表就够了。所有扩展都是 Lua 写的插件,统一放在 plugins/ 目录,每个插件一个文件夹:_meta.lua声明名称和描述,main.lua是入口,放进去就会被自动加载,加载器逻辑在 frontend/pluginloader.lua。
| 插件 | 干什么用 | 位置 |
|---|---|---|
| cloudstorage | 挂载 Dropbox、WebDAV、FTP 云盘 | plugins/cloudstorage.koplugin/ |
| newsdownloader | 订阅并下载 RSS 资讯源 | plugins/newsdownloader.koplugin/ |
| calibre | 无线收书、OPDS 浏览 Calibre 书库 | plugins/calibre.koplugin/ |
| opds | 浏览任意 OPDS 在线目录 | plugins/opds.koplugin/ |
| vocabbuilder | 阅读时自动收集生词 | plugins/vocabbuilder.koplugin/ |
| systemstat | 查看电池、内存等系统状态 | plugins/systemstat.koplugin/ |
想自己写一个,拿 plugins/hello.koplugin/ 当模板最省事,总共几十行:建一个带_meta.lua和main.lua的文件夹,在addToMainMenu里注册一个菜单项,点击后弹个 InfoMessage,整个流程就通了。
KOReader 报错怎么查:三个位置和三层设置文件
出问题先按这张图找,八成能自己定位。
| 症状 | 去哪查 |
|---|---|
| 一启动就闪退回系统菜单 | 九成是平台包拿错(v4/v5、老款/新款),对照 make/ 目录的构建目标核包 |
| 改的设置没生效 / 被重置 | 看下面三层设置文件,确认你改的是哪一层 |
| 手势、按键行为不符合预期 | 手势在 frontend/device/gesturedetector.lua,按键映射在各设备目录的 event_map 文件里 |
设置分三层,各管各的:
- 设备级:frontend/luasettings.lua 管全局,字号、语言、翻页方式都在这层;
- 文档级:frontend/docsettings.lua 记住"这本"书的字体、进度、高亮,换本书自动切回来;
- 路径层:datastorage.lua 定位设备上的数据目录,插件数据库、缓存都挂在它下面。
想查某个行为到底怎么实现的,spec/unit/ 里对应的*_spec.lua单元测试是最好的活文档,测试名基本就是功能名。
装好之后:三件事把收益拿到手
最后留三个动作,每件都花不了十分钟。
- 拿一本字最小的扫描版 PDF 开重排,对比开前开后的阅读体验——这是 KOReader 最直接的收益。
- 从上面表里装 cloudstorage 和 newsdownloader,把书源和资讯流都搬进电纸书。
- 翻一遍 doc/Development_guide.md,再对着 spec/unit/ 跑一遍你关心的模块测试,之后想改源码、提补丁就有路了。
【免费下载链接】koreaderAn ebook reader application supporting PDF, DjVu, EPUB, FB2 and many more formats, running on Cervantes, Kindle, Kobo, PocketBook and Android devices项目地址: https://gitcode.com/GitHub_Trending/ko/koreader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考