Skip to content

About

简单阅读器:使用 Rust 和 egui 编写的 Windows TXT/EPUB 本地阅读器。

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

简单阅读器

使用 Rust 和 egui 编写的 Windows 本地电子书阅读器,支持 TXT、EPUB,提供简洁的书架和连续滚动阅读界面。

界面

书架

书架界面,使用演示数据

阅读

阅读界面,使用演示数据

截图使用程序生成的演示内容。仓库不包含电子书、个人书架或预编译程序。

功能

  • 书架管理:导入文件、文件夹或拖入文件;按书名、作者搜索,筛选阅读状态并排序。
  • 连续阅读:章节标题、章节分隔线、随阅读位置更新的目录,以及本章和全书进度。
  • 图文显示:EPUB 图片按正文顺序显示,并随阅读宽度缩放。
  • 阅读操作:鼠标选择文字、滚轮和按键翻屏、章节跳转、全屏阅读。
  • 书签与搜索:添加、跳转、删除书签;全文文字匹配,最多显示 500 条结果。
  • 阅读设置:字号、行距、阅读宽度、页边距、侧栏;日间、护眼绿、羊皮纸、夜间、深蓝背景。界面配色不跟随系统主题。
  • 本地保存:保存阅读位置、书签和设置,可选择在导入时保存托管副本。

构建与运行

当前主要支持和验证的平台是 Windows x64。请先安装:

  1. Rust 稳定版,选择 Windows MSVC 工具链。
  2. Visual Studio Build Tools 的“使用 C++ 的桌面开发”组件,包含 MSVC x64 编译工具和 Windows 10/11 SDK。

下载或克隆本仓库后,在仓库目录双击 构建.bat。脚本会查找编译环境;首次构建需要下载依赖,耗时较长。

构建完成后,双击生成的 简单阅读器.exe 或 启动.bat。重新构建前请先退出正在运行的阅读器。

也可在已配置 MSVC 环境的终端中执行:

cargo build --release --locked
.\target\release\simple-reader.exe

快捷键

按键 操作
Ctrl+O 导入书籍
Ctrl+F 打开全文搜索
← / → 上一章 / 下一章
空格 / PageDown 向下翻屏
PageUp 向上翻屏
F11 切换全屏
Esc 退出全屏

在输入框中编辑文字时,方向键不会切换章节。

数据保存

书架、阅读进度、书签和设置保存在 %APPDATA%\SimpleReader。托管副本保存在其中的 books 文件夹;未启用托管时,阅读器直接访问原文件,移动原文件后需重新导入。

重复导入会保留已有阅读进度。“移出书架”删除该书的书架记录和书签,不删除原书文件。备份时可在退出程序后复制整个数据目录。

首次启动会尝试读取旧版元宝阅读器 %APPDATA%\YuanbaoReader\library.db 中的记录,不覆盖旧版数据库。

支持范围

  • TXT:UTF-8、带 BOM 的 UTF-16,以及常见中文编码。
  • EPUB:文字和 PNG、JPEG、GIF、WebP 图片;GIF 显示静态画面。
  • 当前采用单栏、可重排版阅读。特殊 CSS、行内小图、独立 SVG 绘图及出版社固定版式不保证完整还原。
  • 暂不支持 PDF、MOBI、AZW3。

测试

在已配置编译环境的终端中运行:

cargo test --release --locked

默认运行不依赖个人电子书的测试;两个真实 EPUB 样本测试默认忽略,样本不随仓库分发。

如需用自己的长篇小说和插图 EPUB 运行这两项测试,在 PowerShell 中设置路径后执行:

$env:SIMPLE_READER_NOVEL_EPUB = 'D:\Books\novel.epub'
$env:SIMPLE_READER_ILLUSTRATED_EPUB = 'D:\Books\illustrated.epub'
cargo test --release --locked -- --include-ignored

GitHub Actions 会在 Windows 环境中执行常规测试和发布模式构建。

程序还提供独立的界面检查入口:

cargo build --release --locked --features qa
.\target\release\simple-reader.exe --qa-output .\qa-output

检查使用内存书架和演示内容,输出实际渲染截图及 qa-report.json,不读取或覆盖个人书架。可以追加 --qa-book "电子书完整路径" 检查自己的 EPUB;生成的截图和报告可能包含该书内容及本地路径,请自行保留。

完成检查后重新运行 构建.bat,生成不含界面检查入口的普通版本。

参与改进

欢迎通过 Issues 反馈问题或提交 Pull Request。反馈时请说明 Windows 版本、程序版本或提交号、复现步骤,以及实际结果和预期结果。解析问题优先使用可公开的小样本说明;请勿上传无权分发的完整电子书。

许可证

项目代码使用 MIT 许可证。随程序提供的字体使用独立的 SIL Open Font License;字体、图标和依赖的说明见 第三方声明。

About

简单阅读器:使用 Rust 和 egui 编写的 Windows TXT/EPUB 本地阅读器。

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages