提取有关 \hboxes、\vboxes、字形、胶水等的空间元数据

提取有关 \hboxes、\vboxes、字形、胶水等的空间元数据

我使用 TeX 已有近 10 年,但直到最近才决定进一步了解 TeX 的真正作用。这是因为我想在用 C++ 编写的可视化工具中显示 LaTeX 渲染的文本和数学。我计划从我的代码远程调用 LuaTex,然后将渲染的文本作为图像读入。但是,为了对单个单词(甚至可能是字符)的动画进行细粒度控制,我需要提取 s 和 s 层次结构的空间元数据(参考点位置、高度、深度、宽度、水平/垂直粘合宽度等),\hbox以便\vbox我可以根据用例要求操作单个框。

我最近读了《TeX 之书》的前半部分,现在正在阅读一些关于 TeX 内部工作原理的 Overleaf 文章。其中一篇特别提到了 Lua 如何提取元数据,并从和中创建\hboxs 和\vboxs层次结构的节点图。因此,这似乎是一个可行的选择,即编写一个递归 Lua 脚本来提取必要的元数据(尽管我还没有弄清楚如何编写一个 Lua 脚本来执行此操作,因此任何有关开源解析器脚本的建议都将不胜感激)。另一个选项基于\hlists\vlist我之前的帖子,就是直接从.dvi文件中提取数据。

有人能告诉我上述哪个选项对我的用例来说是更易于处理的解决方案吗?此外,任何有关推荐解决方案的更多资源都将不胜感激!

相关内容