
Pretext 是 chenglou 开源的纯 JavaScript/TypeScript 文本测量与排版库,主打快速、准确、覆盖多语言场景。它可以在不触发 DOM layout reflow 的情况下,测量多行文本高度并计算换行布局。
传统做法经常依赖 getBoundingClientRect、offsetHeight 等 DOM 测量,这会触发布局回流,在复杂 Web UI 中代价很高。Pretext 则先通过 prepare() 规范化文本、分段、应用规则并缓存宽度,再用 layout() 在热路径里做纯算术计算。
它支持 DOM、Canvas、SVG 渲染方向,README 中还提到未来会支持 server-side。典型场景包括虚拟列表高度预估、masonry/userland layout、按钮文字是否溢出验证、动态内容加载前避免 layout shift 等。
对于前端工程、编辑器、聊天 UI、长列表和 AI 生成界面来说,Pretext 是一个底层但很有用的工具:让文本布局从“浏览器里试一下”变成可预测、可测试、可缓存的计算问题。
传送门
https://github.com/chenglou/pretext
原创文章,如若转载,请注明出处:https://wefound.cc/p/2068.html