Repository navigation
书库阅读器 v1.1.0
书库阅读器 v1.1.0
修复内容
- 摸鱼模式吞字问题修复:彻底解决摸鱼模式每页末尾约6-7个字符被截断不显示的问题
根因分析与修复方案
问题根因有三重:
-
Canvas measureText 测量偏差:原代码使用 Canvas API 测量字符宽度,但 Canvas 对 CJK 中文字符的测量结果与浏览器实际 DOM 渲染存在偏差,导致算出的每页字符数偏大
- 修复:改用隐藏 DOM span 元素测量,与浏览器实际渲染完全一致
-
取样位置偏差:原代码从全文开头(第0个字符)开始测量,开头是书名和目录区,含有大量 ASCII 字母和空格(窄字符),导致平均字符宽度偏小,算出的每页字符数偏大。应用到正文页(以 CJK 宽字符为主)时文字溢出被 ellipsis 截断
- 修复:从文本中间取样200个字符测量平均宽度,代表正文典型内容
-
页码宽度动态变化:测量时 moyuPage 显示 "0/0"(窄),渲染后变成 "123/4567"(宽),flex 布局导致 moyuText 实际可用宽度减小,进一步加剧溢出
- 修复:测量时预设 moyuPage 为最宽情况 "9999/99999",确保测量宽度与实际渲染宽度一致
安装方法
- 下载
ShuReader-Setup-1.1.0-x64.exe - 双击运行,选择安装路径
- 等待解压完成
- 从桌面快捷方式或开始菜单启动