Files
codex-bot 2b3b3a1ae4
Verify and deploy Tabularium / verify-and-deploy (push) Successful in 5m47s
Expand document collections with Pretext tutorial and simplify library navigation
2026-10-28 13:42:51 +08:00

1.9 KiB

从浏览器排版到 Pretext:高性能文本布局源码教程

这份教程回答一个问题:Pretext 为什么能很快地算出一段文字的换行与高度?

读完后,你应该能解释它的性能来源,沿着函数调用读懂核心源码,并知道如何在自己的界面中使用它。只需要了解 JavaScript 函数、数组和基本 DOM;字体、字素、回流等概念会逐步解释。

分析基于上游提交 0d102a5cd933611e86a7e60bda7b4baa5995c6b0,研究日期为 2026 年 10 月 28 日。本文描述这个版本,不把早期实现或未来版本的行为混在一起。源码链接指向本次研究的上游版本;实验脚本和记录随文保存在本站。

阅读路线

  1. 第一章:为什么算文字高度也会慢
  2. 第二章:先看懂 prepare 与 layout 的分工
  3. 第三章:分析阶段如何把文字变成可布局的分段
  4. 第四章:测量缓存如何减少浏览器工作
  5. 第五章:换行算法为什么能变成数值循环
  6. 第六章:为什么只求高度比拿到每行文字便宜
  7. 第七章:如何避免长文本拖垮算法
  8. 第八章:准确性怎样影响性能设计
  9. 第九章:把它接进界面和虚拟列表
  10. 第十章:亲自验证性能机制
  11. 第十一章:按什么顺序读源码
  12. 第十二章:把这些设计迁移到自己的代码

第一次阅读建议顺着读到第六章,再看第九章。第四、七、八章适合对照源码细读;第十章提供实验与复现方法。