# yunshu-reader **Repository Path**: night_wish/yunshu-reader ## Basic Information - **Project Name**: yunshu-reader - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-03 - **Last Updated**: 2026-09-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 云舒轻读 > 一款安静的本地 TXT / PDF 阅读器。 > 文艺小清新 · 治愈系插画风格 · 低饱和莫兰迪配色。 基于 PyQt6 的 Windows 桌面端应用,支持本地 TXT / PDF 导入、分组管理、章节目录、阅读进度记忆与自定义主题。 --- ## 设计原型截图 截图来自项目原型设计稿,展示了主要界面与交互。 ![登录页](docs/screenshots/login.png) *登录页:欢迎回来,邮箱 + 密码登录* ![注册页](docs/screenshots/register.png) *注册页:创建你的书架* ![书架主页](docs/screenshots/shelf.png) *书架主页:左侧分组导航、中间书籍卡片、顶部搜索与添加书籍* ![TXT 阅读页](docs/screenshots/reader.png) *TXT 阅读页:左侧目录、右侧正文、底部章节翻页与进度* ![添加书籍弹窗](docs/screenshots/import_dialog.png) *添加 TXT / PDF 书籍:拖拽上传、自动识别章节、选择分组与编码* ![新建分组弹窗](docs/screenshots/group_dialog.png) *新建分组:命名与封面颜色* --- ## 项目结构 ```text yunshu-reader/ ├── app/ # 应用源码 │ ├── __init__.py │ ├── batch_import_dialog.py # 批量导入本地书籍弹窗 │ ├── controls.py # 通用控件(按钮、输入框等) │ ├── cover.py # 书籍封面 SVG 自绘 │ ├── db.py # SQLite 数据层(用户 / 分组 / 书籍 / 进度) │ ├── group_dialog.py # 新建 / 编辑分组弹窗 │ ├── icons.py # SVG 图标资源 │ ├── import_dialog.py # 单文件导入弹窗(TXT / PDF) │ ├── login.py # 登录页 │ ├── reader.py # 阅读页(TXT / PDF) │ ├── register.py # 注册页 │ ├── shelf.py # 书架主页 │ ├── theme.py # 设计 token / 字体 / 颜色 / 尺寸 │ ├── txt_parser.py # TXT / PDF 解析与章节提取 │ └── widgets.py # 公共组件(无边框窗体混入、标题栏、书卡等) ├── main.py # 应用入口与窗口路由 ├── requirements.txt # Python 依赖清单 ├── run.bat # 一键启动脚本 ├── build.bat # Windows 打包脚本 ├── build_mac.sh # macOS 打包脚本 ├── clean.bat # 清理构建产物与缓存 ├── log/ # 运行日志(startup.log / stderr.log) └── docs/screenshots/ # 项目原型截图 ``` ## 脚本说明 | 脚本 | 作用 | |---|---| | `run.bat` | **一键启动**:使用 PATH 中的 `python` 运行 `main.py`(需已安装 PyQt6 / PyMuPDF;未装则先 `pip install -r requirements.txt`)。 | | `build.bat` | **Windows 打包**:使用 PyInstaller 生成 `dist\云舒轻读\云舒轻读.exe`(onedir、无控制台窗口),可整体复制到其它 Windows 机器运行。 | | `build_mac.sh` | **macOS 打包**:在 macOS 上生成 `dist/云舒轻读.app`;PyInstaller 不能跨平台编译,必须在 Mac 本地执行。 | | `clean.bat` | **清理垃圾**:删除 `build/`、`dist/`、`*.spec`、`build.log`、`__pycache__`、`.pyc` 等构建/缓存文件,仅保留源码、启动器与打包脚本。 | ## 运行方式 方式一:双击项目根目录下的 `run.bat`。 方式二:使用已安装 PyQt6 的 Python 环境: ```bash cd yunshu-reader python main.py ``` 首次运行前请确保依赖已安装: ```bash pip install -r requirements.txt ``` ## 打包方式 ### Windows 双击 `build.bat`,或从命令行执行: ```bash build.bat ``` 产物位于 `dist\云舒轻读\`,拷贝整个文件夹即可分发。若旧 `dist` 被 Windows Defender 实时扫描锁住导致删除失败,请以管理员身份给项目目录加 Defender 排除项后重试。 ### macOS 必须在 Mac 上执行(PyInstaller 不跨平台): ```bash chmod +x build_mac.sh ./build_mac.sh ``` 产物为 `dist/云舒轻读.app`,分发前建议签名 / 公证或压缩为 zip。 ## 主要依赖 - [PyQt6](https://www.riverbankcomputing.com/software/pyqt/) 6.11.0 — 跨平台 GUI 框架 - [PyMuPDF](https://pymupdf.readthedocs.io/) 1.28.2 — PDF 文本提取 完整依赖见 [`requirements.txt`](requirements.txt)。 ---