Skip to content

v1.3.0-beta.7

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 29 Sep 08:30
· 13 commits to develop since this release

Shiori 1.3.0 Beta 7

这是 Shiori 1.3.0 的第七个测试构建,内部构建号为 17。

相比 Beta 6,本次主要继续完善 Reader:改进跨章节翻页与阅读完成页交互,补充 EPUB 表格、悬挂段落与空行排版,并增加正文图片的主题适配与原图保存能力。

跨章节翻页

相邻章节之间现在可以像章内翻页一样跟随手势。

  • 在章节最后一页继续拖动时,可以逐渐看到下一章,而不是松手后才开始切换。
  • 从章节首页向回翻时,同样可以跟手预览上一章末页。
  • 小幅拖动、快速反向拖动或系统取消手势都会回弹到原页。
  • 确认翻页后从当前拖动位置继续完成动画,不再重新从头播放一次完整翻页。
  • Reader 会有限准备相邻章节,目标已经就绪时可以更快进入下一页。
  • 目标尚未准备完成时继续保留当前真实页面,并允许取消等待。
  • 切章过程中延后图片尺寸变化引起的重新分页,减少翻页动画中页面突然跳动的问题。
  • 阅读进度仍然只会在切换最终确认后交接,预览下一章不会提前改变阅读记录。

特殊 EPUB / WebView 页面继续使用较保守的章节切换方式,不会为了预览创建隐藏 WebView。

阅读完成页

完成页现在更接近 Reader 本身的一部分,而不再只是翻页结束后的独立界面。

  • 最后一页可以跟手翻到阅读完成页,并支持取消回弹。
  • 在完成页向回拖动,可以直接跟手返回真实的最后一页。
  • 完成页支持打开 Reader 顶部 / 底部工具栏。
  • 可以从完成页打开目录和阅读设置。
  • 完成页不会伪造一个新的"章节 100%"进度。
  • Android / iOS 沉浸阅读时,隐藏工具栏后仍保留时间和电量状态。
  • 调整窗口、字号或重新分页后,从完成页返回时仍会定位到当前布局下正确的最后一页。
  • 只有真正确认进入完成页后才记录全书终点;只是掀开预览再取消,不会把书误记为已读完。

同时重新整理了完成页的书签装饰、标题、分隔元素与按钮布局。

EPUB 排版兼容

本次继续扩展原生 EPUB Reader 的排版支持。

段落空行

  • 保留作者明确写入的空白段落,不再把部分有意义的 <br> / 空行过滤掉。
  • 章节开头即使先存在作者空行,也仍能正确识别并提升章节标题。
  • 普通源码缩进和纯格式空白不会因此被错误转换成额外空行。

悬挂段落与尾部标签

现在支持一类常见的 EPUB 排版:

  • 首行从正常位置开始。
  • 后续换行按照作者设置继续缩进。
  • 短标签可以贴在段落右侧,例如聊天记录中的时间。
  • 长段落可以跨页、跨双页继续排版,缩进和标签位置不会在分页后重置。
  • 窄屏和大字号下会优先保证正文仍有可读宽度。

双列表格

新增一部分受限 HTML 表格的原生分页支持,适用于时间表、事件记录等简单两列表格。

支持:

  • 左侧短标签 + 右侧正文。
  • 固定的两列对齐。
  • 中间竖向分隔线。
  • 单元格内边距。
  • 作者设置的空白间隔行。
  • 右侧长正文跨页继续排版。
  • 双页 Reader 和不同字号下重新布局。

复杂多列表格、合并单元格、嵌套表格等仍会回退为可读文本,不尝试实现完整浏览器表格引擎。

正文图片

白底图稿适配阅读主题

对于高置信度的白底文字图、关系图和线稿,Reader 可以将纸面映射到当前阅读纸色,并调整笔画颜色。

例如在暖纸或夜间主题下,部分原本带有大片纯白背景的图稿不会再显示成突兀的白色方块。

这是保守识别:

  • 照片和彩色插画保持原图。
  • 透明图片保持原图。
  • 无法确定是否属于文字 / 线稿图时保持原图。
  • 封面和图片原图预览不会被染色。

图片预览与保存原图

全屏图片预览新增保存能力。

  • 可以将当前图片保存到系统照片库或文件位置。
  • 保存的是 EPUB / Source 提供的原始编码图片,而不是 Reader 截图或经过主题处理后的版本。
  • Windows 使用保存文件位置选择。
  • Android / iOS 使用各平台支持的照片 / 文件接口。
  • 单击图片预览区域即可立即关闭。
  • 继续支持双指、鼠标滚轮和触控板缩放。

本地 EPUB 目录

改进本地 EPUB 目录中当前章节的选择与滚动位置。

部分 EPUB 会把"章节标题页"和实际正文拆成不同 spine 文件。此前进入正文后,目录可能无法正确高亮对应章节。

现在 Reader 会在阅读顺序中向前寻找最近的有效目录项:

  • 正文页可以继续高亮所属章节。
  • 当前条目会自动滚动到更容易看到的位置。
  • 实际点击目录项时仍跳转到 EPUB 原始目标,不改变目录内容本身。

书架操作

触摸设备的书架长按菜单重新整理,与桌面右键菜单保持更一致的能力。

  • 显示封面、书名、作者、格式与阅读进度。
  • 提供「开始阅读 / 继续阅读」。
  • 保留详情与移出书架。
  • 本地书可以直接从书架执行「重新解析」。

手机端现在也正确接入本地 EPUB 的重新解析能力,不必先进入独立的「本地文件」页面。

阅读设置

阅读设置的外观做了一些整理:

  • 阅读纸张 / 主题选项的图标与文字颜色更加一致。
  • 强调色改为更清晰的色块选择,并直接在当前颜色上显示选中状态。
  • 设置变更后的重新分页继续按照语义阅读位置恢复。

EPUB 重新解析

本次 EPUB 解析器版本从 14 升级到 18。

重新解析后才能获得本次新增或修正的:

  • 作者空白段落保留。
  • 章节开头标题识别修正。
  • 悬挂段落与右侧尾部标签。
  • 受限双列表格结构。

此前已经导入的 EPUB 无需删除后重新导入,可以直接从:

  • 本地文件
  • 书籍菜单
  • 现在新增的手机书架长按菜单

选择「重新解析」。

正文图片的纸色适配属于显示层能力,不需要为了这一项重新解析。

Beta 测试重点

如果方便,欢迎重点观察:

  • 章节末页 ↔ 下一章、章节首页 ↔ 上一章的拖动、取消和快速反向操作。
  • 跨章目标尚未加载完成时取消或继续等待。
  • 完成页 ↔ 最后一页双向跟手翻页。
  • 完成页打开目录、设置以及显示 / 隐藏工具栏。
  • 调整字号或窗口后从完成页返回最后一页的位置。
  • 本地 EPUB 中聊天记录、悬挂缩进、时间标签和简单时间表的显示。
  • EPUB 中作者明确留下的空行。
  • 暖纸 / 夜间主题下白底文字图和线稿的显示。
  • 图片全屏预览以及保存原图。
  • 重新解析旧 EPUB 后阅读位置是否正确保留。
  • Android / iOS 手机书架长按本地 EPUB 后的「重新解析」入口。
  • Windows 双页 Reader 下跨章节翻页和图片显示。

如果遇到问题,反馈时请尽量附上系统版本、书籍格式、当前阅读主题、窗口大小以及复现步骤。

已知分发限制

  • Windows 当前仍提供未签名的 x64 便携 ZIP,请完整解压后运行。
  • EPUB 原版式页面仍依赖 Microsoft Edge WebView2 Runtime。
  • 部分特殊 WebView EPUB 页面不会使用新的跨章跟手预览。
  • 白底图稿识别是保守启发式,并不能保证所有出版物图片都自动适配纸色。
  • Android、iOS 和 Windows 不同设备上的图片保存权限与系统文件选择界面可能有所不同,Beta 阶段欢迎反馈兼容性问题。
  • Windows 10、不同 DPI / 输入方式以及更多 Android / iOS 真机组合仍需要继续验证。