彩读|ColorTxt 3.0 书源 × AI+
一款会给内容上色的本地 TXT 小说阅读器,带给你不一样的阅读体验!
还有章节识别、简繁互转、划线标注、记笔记、词典、翻译、多角色语音朗读、AI 阅读助手、书源找书等功能。
功能特性 [预览图]
| 功能 | 说明 | |
|---|---|---|
| 本地文件阅读 | 支持本地 .txt / .md 文件 | |
| 其他电子书 | 支持常见的电子书格式(如 .epub),打开时会转换为 .md 进行加载 | |
| 彩读书包 | 可导入/导出彩读专用的 .ctz / .ctzx 书包文件,方便分享和跨设备同步 | |
| 自动编码识别 | UTF-8 和 ANSI 都能正常打开 | |
| 自动章节识别 | 内置常用的章节匹配规则,也支持自定义匹配规则 | |
| 个性内容上色 | 使用一套自定义的高亮规则对内容进行着色,带来 独特的阅读体验! | |
| 自定义高亮词 | 可选择任意词语进行高亮显示(可用于突出主要角色、关键词语等) | |
| 自定义配色 | 内置多套配色方案,也可以自定义阅读区配色 / 高亮色 / 标注色 | |
| 全屏阅读 | 禅模式,沉浸式阅读体验,阅读区域宽度可自由调整 | |
| 极简视图 | 专注阅读,阅读区撑满窗口,鼠标移到窗口边缘唤出相应面板 | |
| 阅读尺 | 适合注意力不容易集中的人(ADHD),聚焦阅读行,淡化其他行 | |
| 摸鱼模式 | 打开一个无边框透明置顶的阅读窗口,不知道有什么用 | |
| 番茄时钟 | 保护眼睛,健康阅读,从你我做起! | |
| 书签 | 可添加带备注的书签 | |
| 划线笔记 | 可选中文本进行划线标注、记笔记 | |
| 编辑模式 | 方便对小说内容进行修改(错别字坚决不能忍!) | |
| 定时滚动 | 定时滚动一屏或一行 | |
| 语音朗读 | 支持旁白 / 对白多音色,配合 AI + 角色卡可实现多角色语音朗读 | |
| 文本替换 | 全局替换文本(可用于替换人名、去广告文本等) | |
| 简繁互转 | 简繁互转,字母 / 数字全半角互转 | |
| AI 阅读助手 | 可以让 AI 帮忙分析剧情、回答小说相关问题(支持生成 | |
| 角色卡生成 | 借助 AI 检索小说中角色的相关信息生成摘要,通过 文生图 生成角色立绘 | |
| AI 智能排版 | 让 AI 对文本进行排版,可自动处理硬换行、修正标点符号等 | |
| 书源找书 | 可多源搜索,支持在线阅读或整书下载(入口:「更多 → 找书」) | |
| WebDAV | 用于跨设备同步应用配置、书包 | |
| 词典 | 查询词语释义,支持导入本地词库 | |
| 翻译 | 翻译选中文本,支持 AI 翻译和多种翻译服务 | |
| 空行压缩 | 压缩多余空行 | |
| 行首缩进 | 在行首添加全角缩进 | |
| 文件列表 | 拖放添加文件 / 目录(会递归读取子目录),支持分类 / 排序 / 过滤;可切换列表 / 树状 | |
| 全文搜索 | 检索所有匹配项并给出结果列表(区别于阅读区的逐个查找) | |
| 字体 | 可设置字体 / 字号;内置 京華老宋体,也可以选择系统中安装的任意字体 | |
| 排版 | 可设置字间距 / 行间距 / 段间距 / 左右边距 | |
| 主题切换 | 内置明亮 / 暗黑两种主题 | |
| 粘性标题栏 | 章节标题会常驻顶部,看到哪里一目了然 | |
| 阅读进度恢复 | 自动记录阅读进度,下次打开可以继续阅读 | |
| 最近打开记录 | 记录最近打开的文件 | |
| 摸鱼快捷键 | 摸鱼时可以快速隐藏阅读器 | |
| 多窗口 | 支持同时打开多个窗口 |
关于「其他电子书格式」的支持
支持打开 .md 文件,章节按 ATX # 标题识别,章节列表按标题层级缩进,父级可折叠。
[!NOTE] 只支持标题、链接、图片等少量 Markdown 语法,服务于小说文本。
支持打开常见的电子书格式(.epub/.mobi/.azw3/.fb2/.fbz/.pdf/.chm),打开时会转换为 .md 进行加载。
[!NOTE] 会舍弃掉电子书自带的样式,只提取里面的文本进行展示。
对于排版精美的电子书,建议使用专门的阅读器进行阅读,彩读只适用于纯文本或带简单插图的电子书。
关于「摸鱼快捷键」与「摸鱼模式」
「摸鱼快捷键」可以快速隐藏阅读器,包括窗口、任务栏按钮(Windows)、程序坞图标(macOS),不知道有什么用。
默认的快捷键是 Ctrl+`,你也可以在「快捷键」面板中自定义。
[!NOTE] macOS 上,要隐藏程序坞图标,需要在
系统设置→桌面与程序坞中关掉在程序坞中显示建议App和最近使用的App。
「摸鱼模式」会打开一个无边框、无任务栏、透明背景、始终置顶的阅读窗口,不知道有什么用。
全局快捷键 Ctrl + ↑ / ↓ 翻页、Ctrl + ← / → 切章。
右键菜单可开关「定时滚动」。
[!WARNING] 已知问题:在 Linux Wayland 上,全局快捷键会失效,这个暂时没有解决办法。
关于「高级换行策略」
[!IMPORTANT] 彩读给 Monaco 打了补丁,「简单换行策略」下的中文自动换行效果已经得到了不错的改善,所以除非情况特殊,不建议开启「高级换行策略」
阅读器默认使用一套比较简单的换行算法,效率高,但不够准确,会出现该换行却没有换行的情况。这个问题连 VSCode 都没能完美解决。
「高级换行策略」则使用了一套更复杂的算法,能有效提高换行的准确性,但性能较差。当要处理的文件比较大时,会出现明显卡顿,要等计算完才能恢复。
所以在做一些会影响布局的操作时(比如修改文字格式、调整窗口大小等),建议先关掉「高级换行策略」,等操作完后再重新开启。
[!WARNING] 已知问题:启用「高级换行策略」会有很大的内存开销,且这个占用难以被释放,见 #5311。
关于「词典」
内置 Wiktionary、Wikipedia 网络词典,支持导入本地词典 StarDict / MDict / DICT / Slob / BGL。
词典下载
实用建议:优先
StarDict和MDict;要离线维基/维基词典可用Slob;要开源多语对译可用FreeDict。
- StarDict(
.ifo/.idx/.dict.dz)- http://download.huzheng.org/zh_CN/ — 胡正旧站,中文区常用
- https://tuxor1337.frama.io/firedict/dictionaries.html — 开源许可的 StarDict 汇总
- MDict(
.mdx/.mdd)- https://downloads.freemdict.com/ — FreeMdict 下载站
- https://mdx.mdict.org/ — 常用镜像目录
- Slob(
.slob,Aard2) - DICT(dictd,常为
.index+.dict.dz) - BGL(Babylon)
- https://freedict.org/downloads/ — FreeDict,多语双向,提供
StarDict/Slob/Dictd词典下载
关于「翻译」
支持以下翻译服务:
| 服务商 | 说明 |
|---|---|
| AI 翻译 | OpenAI 兼容接口,根据 AI 服务商配置相应 API 密钥 |
| 微软翻译 | Edge 免费通道,无需配置 |
| Google 翻译 | 免费网页接口,无需配置 |
| Yandex 翻译 | 免费通道,无需配置 |
| DeepL | 官方 API / DeepLX,需要 API Key |
| 百度翻译 | 官方开放平台,需要 APP ID 与密钥 |
| 有道翻译 | 官方开放平台,需要应用 ID 与密钥 |
| 腾讯翻译 | 腾讯云机器翻译,需要 SecretId / SecretKey |
| 火山翻译 | 火山引擎机器翻译,需要 Access Key |
| 阿里翻译 | 阿里云机器翻译,需要 AccessKey |
关于「语音朗读」
支持的 TTS:
| 服务商 | API 密钥 | 说明 |
|---|---|---|
| Edge TTS | ||
| 系统语音 | ||
| 讲述人自然语音 | 仅 Windows,通过 Windows SAPI5 调用本机音色, 需安装适配器与语音包,如 NaturalVoiceSAPIAdapter | |
| Qwen3-TTS | 阿里云通义(DashScope) | |
| MiniMax | MiniMax | |
| 小米 MiMo | MiMo | 支持 音色定制 和 音色克隆,目前限免 |
| 豆包语音合成大模型 2.0 | 火山引擎 | 内置官方 444 个音色,可切换方言 |
- 支持「单音色」或「旁白/对白多音色」。
- 启用「AI 阅读助手」时,多音色可区分「男声」「女声」,也可以在「角色卡」中给角色设置专属音色。
- 支持「朗读过滤」(朗读时忽略特定内容)和「自动暂停」(朗读指定的章节数或时长后自动暂停)。
关于「AI」功能
分析剧情 ![]() | 生成章节匹配规则 ![]() |
|---|---|
生成思维导图 ![]() | 生成词云图 ![]() |
角色卡 ![]() | 生成角色立绘 ![]() |
对话模型:用于「AI 阅读助手」对话,以及「角色卡」整理检索结果、推断画风;
向量模型:用于全文检索(RAG),支持 内置本地模型 和 远程嵌入 API。
为什么需要向量模型?
简单来说,就是 对话模型 擅长「思考」和「说」,却不擅长「找」,我们也不可能每提一个问题都把整本小说的内容一起发给 AI 服务器,成本太高。(比如你问
xxx在第几章出场?,这个问题显然需要在整本书里找)而 向量模型 就是来做这个事情的,它会提前给整本小说 建立索引 (可以简单理解为生成了一个「小说内容的搜索引擎」),当你提问时,它会在索引库中「找到」和问题 相关性最高 的几个片段再交给 AI。
这个过程是在 本地执行 的,不需要消耗 Token;发给 AI 服务器的原文也只剩下找出来的几个片段,从而降低了成本。
远程接口目前只支持 OpenAI 规范,以下为预设的服务商列表:
| 服务商 | 默认接口地址 |
|---|---|
| 本地 LM Studio | http://127.0.0.1:1234/v1 |
| 本地 Ollama(OpenAI 兼容) | http://127.0.0.1:11434/v1 |
| DeepSeek | https://api.deepseek.com/v1 |
| 阿里云通义(DashScope) | https://dashscope.aliyuncs.com/compatible-mode/v1 |
| 智谱 GLM | https://open.bigmodel.cn/api/paas/v4 |
| Moonshot(Kimi) | https://api.moonshot.cn/v1 |
| 硅基流动 | https://api.siliconflow.cn/v1 |
| Agnes AI | https://apihub.agnes-ai.com/v1 |
| MiniMax | https://api.minimaxi.com/v1 |
| 小米 MiMo | https://api.xiaomimimo.com/v1 |
| OpenAI | https://api.openai.com/v1 |
| OpenRouter | https://openrouter.ai/api/v1 |
| Google Gemini(OpenAI 兼容) | https://generativelanguage.googleapis.com/v1beta/openai |
| 自定义 OpenAI 兼容服务 | (手动输入接口地址) |
OpenAI 接口拼接方式(不重要)
- 拉取模型列表:
GET {接口地址}/models - 对话:
POST {接口地址}/chat/completions - 调用嵌入模型:
POST {接口地址}/embeddings
内置本地模型:下载模型到本地运行,无需 API(模型文件没有打包,需要在「设置」中手动下载):
| 内置模型 | 说明 |
|---|---|
| BGE Small ZH v1.5 (~47 MB,维度:512) | 高质量中文嵌入 |
| Multilingual E5 Small (~118 MB,维度:384) | 多语言支持(100+ 语言),综合性能好 |
文生图:用于「角色卡」生成角色立绘,支持以下接口:
| 服务商 | 默认接口地址 |
|---|---|
| 本地 WebUI | http://127.0.0.1:7860 |
| 本地 ComfyUI | http://127.0.0.1:8188 |
| OpenAI Images | https://api.openai.com/v1 |
| Agnes AI | https://apihub.agnes-ai.com/v1 |
| 阿里云通义万相(DashScope) | https://dashscope.aliyuncs.com |
| MiniMax | https://api.minimaxi.com/v1 |
| Stability AI | https://api.stability.ai |
| 自定义 OpenAI 兼容服务 | (手动输入接口地址) |
关于「AI 智能排版」
启用「AI 阅读助手」时,在编辑模式下,可通过工具栏「AI 智能排版」一键全文排版,或者在编辑器中选中文本后「右键 → AI 智能排版:选中文本」进行局部排版(长文建议分次排版)。
排版完成后会显示 Diff 预览,可对排版结果逐一确认,点「应用」后再一次性写回,「放弃」则主文档不变。
[!NOTE] 不同模型的排版结果可能差异较大,请自行测试。
可在「设置 → 编辑」中自定义排版选项:
| 选项 | 作用 |
|---|---|
| 清理 HTML 残留 | 解码 說 与 等 HTML 实体,并去除 <br/> 等 HTML 残留。 |
| 修正硬换行 | 将同一自然段内因排版产生的句中强行换行合并为一行。 |
| 修正标点符号 | 引号/括号配对、半角转全角、断句补标点等;不改动数字小数点与英文对白中的半角标点。 |
| 统一对话符号 | 将对话统一为 “” 或 「」 包裹。 |
| 修正乱码 | 尝试将 锟斤拷 � 等乱码还原为合理汉字;有一定误还原风险,请自行检查。 |
| 还原 * 屏蔽 | 尝试根据上下文还原正文里的 * 和谐字;不处理整行分隔线;可能误猜,请自行检查。 |
| 移除盗版水印 | 删除句中插入的防盗版杂符(如 月*漪〇/泣②sa/);有一定误删风险,请自行检查。 |
| 移除广告/引流信息 | 删除 发布于 xxx 看小说,就来 xxx 网 等站宣水印;有一定误删风险,请自行检查。 |
| 压缩空行 | 自动应用「格式化:压缩空行」。 |
| 行首缩进 | 自动应用「格式化:行首缩进」。 |
可通过「设置 → 技能 → 智能排版」自定义 AI 排版行为。
[!NOTE] 「最大 Token 数」会限制 AI 单次回复内容长度,所以排版时会根据该设置进行分段,如果想减少分段数(请求次数),可以适当调高该值,如改为 8192。
关于「书包」
书包是彩读专用的压缩包格式,方便分享和跨设备同步。
书包文件的扩展名为 .ctz(普通 zip 包)/ .ctzx(加密包),目录结构如下:
{文件名}.ctz|ctzx/
characters/
portraits/ # 角色立绘
manifest.json # 角色卡
content/
{文件名}.txt|md # 原文件
{文件名}.Images/ # md 文件的插图
bookmarks.json # 书签
highlights.json # 高亮词
notes.json # 笔记
manifest.json # 书包配置文件关于「WebDAV」
用于跨设备同步应用配置、书包。
在「设置 → WebDAV」中开启:
- 主界面:
- 侧栏「WebDAV」面板:上传/同步「配置」;拉取上传的书包列表,可过滤、排序、下载
- 底栏「文件路径」菜单:上传/同步「书包」(基于当前打开文件导出的带阅读进度的书包)
- 找书窗口:
- 顶栏「WebDAV」菜单可分别上传/同步「书架 / 书源 / 设置」
远端目录结构:
ColorTxt/
Main/ # 主界面配置
Books/ # 上传的书包
FindBook/ # 找书窗口书架/书源/设置预设字体
| 类型 | macOS | Windows | Linux |
|---|---|---|---|
| 内置字体 | 京華老宋体 | 京華老宋体 | 京華老宋体 |
| 黑体 / UI 无衬线 | 苹方-简 | 微软雅黑 | 思源黑体 |
| 宋体 / 明体 | 宋体-简 | 宋体 | 思源宋体 |
| 楷体 | 楷体-简 | 楷体 | 文鼎 UKai |
说明:
- 名称中的「-简」表示对应 简体中文(SC) 字体族,与 macOS 字体册中常见命名一致;并非「只能显示简体字」,而是字形与排版习惯面向简体场景。
- Linux 环境需自行安装常见中文字体包(如 Noto CJK、文泉驿、文鼎 UKai 等),否则可能回退到系统默认字体。
其他
相关
- 应用图标由 豆包 生成
- 内置背景图由 ChatGPT Images 2.0 生成
- 页面里的图标来自 iconfont
- 内置的
京華老宋体仅供学习交流使用,商用请购买正版字体 - 内容上色灵感来源于 VS Code 插件 vscode-txt-syntax
- 基于 jschardet 检测编码,配合 iconv-lite 进行解码
- 使用 font-list 获取系统字体列表
- 基于 libmspack 移植了一套 JavaScript 实现,以支持对
.chm格式的解析 - 其他电子书格式的解析,主要参考 foliate-js 的实现
- AI 阅读助手和语音朗读的基础功能,参考了 ReadAny 的实现
- 词典功能参考了 readest
- 角色卡 3D 卡片效果的实现思路及部分样式、贴图资源来源于 pokemon-cards-css
- 基于 @node-rs/jieba 实现中文分词,以支持词云生成
- 基于 OpenCC 实现简繁互转
- 划线/笔记功能的交互,参考了 微信读书网页版
- 书源解析逻辑参考:legado-E(阅读Sigma)





