视觉小说自动阅读怎样等待:把语音结束、文字读完与演出完成分开
一句对白能否自动离开,要分别检查文字展示、阅读等待、语音结束和必要演出,再确认读者没有接管。用温室里的三句虚构对白,填写一张可以交给演出与实现人员的自动阅读等待约定表。

开篇导读
自动阅读应在文字完整呈现、约定的阅读等待满足、当前句语音自然结束、必要演出完成,并且读者没有暂停接管时,才允许进入下一句。这些条件同时成立,才取得“自动离开资格”;任何一个信号都不应独自触发翻页。
下面的温室段落是原创虚构教学例子,不是真实用户案例、实测结果、上手测试或 DramaFork 产品功能。园艺师先说出有配音的提醒,随后出现无配音旁白,最后等待窗帘拉开。我们用它制定逐句规则,不假定任何特定引擎。
一、先区分能观察的完成与无法确认的读懂
“文字显示完”可以观察,“读者读完”却不能仅凭计时确认。因此,策划应把后者写成可执行的阅读等待约定,并允许读者调整和暂停,不要把倒计时结束解释成已经理解。
本例采用一种明确方案:从当前句最后一个字显示完整时开始,累计阅读等待;等待量依据本句可见文字长度与读者选择的等待档位确定。标点如何计入也要写入项目约定,并对有声句、无声句使用同一口径。本文不给出适合所有人的固定速度。
语音与阅读等待可以并行。假如语音较长,就继续等语音;假如文字等待更长,就保留文字。这里不再于语音结束后重复追加一遍完整阅读等待。另一种方案是听完再计时,它能留出专门回看文字的时间,但也会让短句更容易产生停顿感。两种方案都能成立,不能在同一段落里无说明地混用。
二、把五类条件写进等待约定表
先为每句登记是否有语音、是否有阻断演出,再填写下表。未配音是一种已知配置,播放失败则是异常,两者不能共用“已经结束”的标记。
| 检查项 | 本例采用的约定 | 可观察的放行依据 |
|---|---|---|
| 文字完成 | 当前句全部文字已经展示 | 当前句收到完整展示信号 |
| 阅读等待 | 全文显示后,按句长和用户档位累计 | 当前句有效等待达到约定量 |
| 语音结束 | 有声句等待自然播完;无声句明确免除 | 当前句结束信号,或预先登记无配音 |
| 演出阻断 | 只等待列入本句阻断清单的演出 | 清单内每项都到达指定完成状态 |
| 暂停接管 | 自动模式开启,且没有接管状态 | 读者未暂停、未打开回看或菜单 |
用户等待设置不是另一条独立倒计时,而是阅读等待量的输入。本例在进入一句时读取档位;若读者中途打开设置并修改档位,先暂停,明确恢复后按新档位重算本句等待,从零开始累计。这样会多等一次,却能避免刚选慢速便立即翻页。
“演出完成”必须指向具体状态。例如本例写“窗帘到达全开位置”,不写“画面差不多好了”。温室里的循环光尘不列入阻断清单,否则没有终点的装饰效果会让句子永远无法离开。
三、沿三句话逐次判断离开资格
第一句是园艺师的有声提醒:“先别碰那盆幼苗,等我把窗帘拉开。”这句只说出提醒,还不启动拉帘。文字显示完后开始阅读等待,语音继续播放;即使等待先满足,也不能离开。等配音自然结束,再检查自动模式和暂停状态,条件齐全才进入旁白。
若配音先结束,文字还在逐字出现,就继续等全文展示,再完成阅读等待。可见,语音结束只解除语音这一项约束,不能证明文字已经留足时间。需要从配音中删去停顿时,也应重新推演先后顺序,而不是默认旧节奏仍成立。
第二句是无配音旁白:“他把手套放在长凳上,温室里只剩叶片摩擦的轻响。”该句预先登记为无声句,没有必须等待的演出。全文展示后累计阅读等待,满足后即可取得资格,不需要伪造一条音频结束事件,也不能因为没有音频而直接跳过。
第三句是无声文字:“窗帘向两侧退去,第一束光落在育苗盘上。”进入本句时启动拉帘,并把“窗帘全开”登记为阻断条件。如果阅读等待已经满足,窗帘仍在移动,就留在本句;如果窗帘先全开,则继续完成文字等待。两项均满足后,才进入下一句园艺师的说明。
这三句分别覆盖语音等待、无声等待和演出等待。交付时逐句记录进入状态、各项完成次序、最后解除的约束与是否离开;不必捏造秒数,也能检查逻辑是否自洽。
四、读者接管后,恢复必须是明确动作
本例约定:读者点击正文、打开历史回看、进入菜单或主动关闭自动时,先暂停自动推进。正文点击若发生在文字未显示完整时,本次只补全当前句;文字已完整时,本次只暂停。后续手动推进另按手动规则处理,不让同一次输入顺带翻到下一句。
暂停期间停止累计阅读等待。语音和演出是否继续播放应另行约定:本例的普通正文接管允许它们继续,打开菜单则暂停可暂停的播放。无论采用哪种播放策略,暂停期间收到的完成信号都只能更新状态,不能触发离开。
关闭历史或菜单不自动恢复。读者明确选择继续自动后,当前句文字保持完整,阅读等待从零开始;已经自然结束的语音、已经完成的拉帘不重复执行,尚未完成的项目继续等待。代价是恢复时可能多停留一会儿,收益是不会刚返回正文就跳走。
若读者已经手动进入下一句,旧句的等待记录随之失效。旧语音迟到的结束信号,也不能替新句解除约束。句子身份因此应与完成信号一起记录。
五、异常要有出口,适用范围要写清
配音加载失败、被中断或被手动停止,都不等于自然播完。本例对此暂停自动,并提供重试或明确切换本句为无声阅读的入口;选择无声阅读后重新完成阅读等待。不要用一个隐藏超时,把所有异常悄悄解释为成功。
拉帘没有到达全开状态时同样保留阻断。若设计允许跳过,应把“跳过后直接呈现全开状态”写成单独规则;仅停止动画,却让窗帘停在半开位置,不能算演出已完成。
交付前用三句例子检查语音先结束、文字等待先满足、拉帘先完成、暂停时收到结束信号以及旧句信号迟到等次序。每次都应能指出尚未满足的具体条件,而不是只记录“卡住了”或“翻得太快”。
这份约定适用于按句推进的线性阅读段落。进入选项、需要持续操作的场景或没有明确终点的演出时,应退出这套自动离开流程,交给对应交互规则。等待表能够说明何时允许推进,不能证明每位读者都已经读懂。






