TPdfWordBox 范围转换为一个 TPdfSpokenText 块function BuildSpokenTextFromWords(const Words: TPdfWordBoxes; FirstWord, LastWord: Integer): TPdfSpokenText;
| Words | TPdfWordBoxes - 来自页面或查看器的单词框 |
| FirstWord | Integer - 第一个从零开始的单词索引,钳制到 0 |
| LastWord | Integer - 最后一个从零开始的单词索引,钳制到 High(Words) |
TPdfSpokenText,其 Text 已为语音引擎准备好,其 Spans 将每个单词映射回页面文本该帮助程序遍历选定的 TPdfWordBox 范围,并通过 SpokenTextAppend 追加每个单词
生成的跨度表保留每个单词的页码、源字符索引和源字符计数,以便语音引擎偏移可以转换回 PDF 页面
SpokenToPageChar 或 TPdfReadingSession.FeedSpokenPosition 从朗读偏移驱动词级高亮Words := Pdf1.PageWordBoxes;
Spoken := BuildSpokenTextFromWords(Words, 0, High(Words));