在 weread.qq.com 上试过用 Chrome 自带 Read Aloud、Speechify 或任何 TTS 扩展朗读微信读书?毫无反应。复制粘贴返回空。微信读书把每一页渲染成 Canvas,章节数据加密传输。本文讲清技术原因,并告诉你怎么朗读微信读书。
2 分钟装好。无需账号,无需信用卡。
在浏览器里打开任意一本微信读书,右键某段选 Read Aloud——静默。试着选中复制——得到空字符串。查看源码——看到的是一个 `<canvas>` 元素,没有可读文字。原因如下:
在 weread.qq.com 用标准中文电子书 + Chrome 140 测试(2026 年 4 月)
静默。Read Aloud 在 Canvas 渲染页面上检测不到"文章",直接什么都不做。
读菜单标签和导航项,但正文返回空——Speechify 只读 HTML 文本层,不支持 Canvas。
以"no text found"终止。NaturalReader 要求 HTML 文字或上传文件——微信读书两样都没有。
同根因——只支持 HTML。在微信读书书页上读不出任何东西。
朗读任意微信读书,带句子级高亮,同步于 Canvas。拦截加密前的章节 fetch 层,完全绕过 Canvas 屏障。
我们在比 Canvas 更底层工作——在微信读书自己用的数据层。
在微信读书的 JavaScript 解密并画到 Canvas 之前,它先从 CDN 拿章节内容。CastReader 的 main-world content script 挂到那个 fetch 层,在数据被转为像素之前捕获 payload。
我们按微信读书的公开格式解密 payload,切分成段落和句子,并按屏上位置建索引。这样我们同时拿到了文字和"每句 → Canvas 区域"的映射。
提取的文字喂给 TTS 管线。每句播放时,CastReader 用 Selection API overlay 在 Canvas 上高亮对应区域。滚动模式和翻页模式都支持。40+ 语音,全程本地。
Chrome、Edge、Firefox 全免费。无需账号,无需信用卡。
用你平时的微信读书 / 微信账号登录,打开任意一本有权限的书。
几秒内开始播放。句子级高亮在 Canvas 上跟着音频走。翻页自动完成。
因为微信读书把每一页书渲染成 `<canvas>` 元素,没有可读 HTML 文字,而且章节数据是加密 fetch 的。Chrome 的 Read Aloud——和所有基于 DOM 的 TTS 一样——没东西可读。CastReader 直接拦截数据层,所以不管页面怎么画都能用。
不能。Speechify 读 HTML 文字,微信读书没有。它能读 UI 外壳(菜单、按钮),但读不了正文。
合法。你已经为阅读付费或订阅。CastReader 全程本地运行——不上传、不走云端 OCR,一切留在你的浏览器里。你只是在听你本来就有权限读的内容。
能。CastReader 自动识别中文并使用中文语音。简体、繁体都支持。文言文也能处理。
都支持。微信读书默认的翻页模式和单栏滚动模式都覆盖。两个模式下句子级高亮都能用。
图片密集的页面会跳过朗读。图片周围的文字正常读。图片转文字描述在路线图上。
浏览器扩展只覆盖浏览器里的 weread.qq.com。手机版微信读书有自带的 TTS。要读 Mac 桌面版微信读书,装 CastReader for Mac——它通过 macOS 辅助功能 API 支持微信读书桌面版,外加 Kindle Desktop、Apple Books、Preview、Pages、Notes、Word、Obsidian、Notion。
15+ 自然中文语音——男声、女声、不同口音(大陆、台湾)。全免费,无需注册。
Chrome 里开始播放后点"发送到手机",音频通过 Telegram 流到手机——不用装 App,不用配置同步。通勤不方便看屏幕时很好用。
完全免费。无每日限额,无需注册,所有语音全开放。不像 Speechify 有付费层级。