「文本排版的未来不是CSS」:Midjourney工程师开源Pretext

区块律动

据 1M AI News 监测,Midjourney 工程师、React 动画库 react-motion 作者 Cheng Lou 开源了 Pretext,一个纯 JavaScript/TypeScript 文本测量与排版库,零依赖。Pretext 绕过浏览器 DOM 测量(如 getBoundingClientRect、offsetHeight),避免布局回流(layout reflow),用纯算术完成文本高度计算和换行。

Pretext 分两阶段工作:prepare() 通过 Canvas API 一次性测量字符宽度,layout() 基于缓存的宽度数据做纯算术运算。在 500 段文本的基准测试中,prepare() 耗时约 19ms,layout() 仅需 0.09ms。Cheng Lou 在配套文章中写道,「性能提升不是渐进的,而是质变的:0.05ms 对比 30ms,零次回流对比五百次」。

库支持中日韩、阿拉伯语等全语种及 emoji、混合双向文本,可渲染到 DOM、Canvas、SVG。典型应用场景包括:

  1. 无需猜测高度的虚拟列表和遮挡剔除
  2. 瀑布流等 JavaScript 驱动的自定义布局
  3. 聊天气泡多行文本自适应收缩宽度
  4. 文本环绕图片的编辑排版
免责声明:本页面信息可能来自第三方,不代表 Gate 的观点或意见。页面显示的内容仅供参考,不构成任何财务、投资或法律建议。Gate 对信息的准确性、完整性不作保证,对因使用本信息而产生的任何损失不承担责任。虚拟资产投资属高风险行为,价格波动剧烈,您可能损失全部投资本金。请充分了解相关风险,并根据自身财务状况和风险承受能力谨慎决策。具体内容详见声明
评论
0/400
暂无评论