跨富样式字素换行
当过宽的单词跨越多个 typed 富文本 run 时,THPDFHeadlessDocument.SetRichTextFieldValueWithAppearance 会把完整的 Unicode 字素簇保留在同一物理行上
改变字体、颜色或字号不会在基础字符与其组合记号之间制造合法的紧急断行,即使一个空 run 分隔了两者的样式也不例外
排版器在完整逻辑组上计算字素边界,测量实际带样式的外观片段,把每个选中范围分配到一行,然后才绘制各自的字体资源
先指数探测再有界前缀搜索,避免反复测量未使用的段落尾部;准备每个范围和每个原生片段时都会检查取消
原始 V、规范 RV、typed 样式、字符间距和测量基线在保存与重新加载后保持不变
超过整个内容宽度的不可拆分带样式簇保持完整并受 widget 内容裁剪约束,与既有单簇行为一致;下一个簇从另一行继续
禁用换行时保留单个物理行
这一排版行为同样适用于使用 richTextRuns 与 characterSpacing 的真实原生 Linux JSON forms.fill 调用,且不改动带版本的 operation record
跨不同样式片段的 shaping 与 mark 放置、混合样式段落 bidi 和任意 XHTML 仍是后续集成工作
参见 合法样式组换行, Unicode 字素边界 and 原生富文本字段