跳到正文

ADR-0075:单向长表完整行续排 ​

状态:已采纳。

决策 ​

StreamingTable.allowRowSplit 默认关闭。显式打开时,当前源行仍只测量一次;每格保留已消费行号,按页面剩余高度取完整文字行。图片随所在文字行原子移动,原文 UTF-16、真实物理列、最终图文链接及缺字诊断保留。

所有页重复完整表头和格内边距。已结束的短格在后续片段保留一行空框,不重复原文/图片/诊断;该实际输出行仍占预算。IR 使用 firstLineIndex 和 continuedRow 表达来源,不能把续片计为新源行。

处理当前长行的全部续片之前不读取下一源行。整行路径仍至多一行预读;运行仅保留有限表头、当前页及一个已测量源行。表头与任何下一完整行不能同时放入新页时明确失败,不循环空页、缩字或裁切。

既有六参数构造和 Builder 默认保持原子行。新增 record 组件改变解构及反射形状。原子目标、同步取消、源关闭先于 finish、主异常与 suppressed 清理异常不变。纵向合并、块格、自动列宽及未来语义继续独立。