「テキストレイアウトの未来はCSSではない」:MidjourneyエンジニアがオープンソースのPretextを公開

robot
概要作成中

据 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による見解の支持や、金融・専門的な助言とみなされるべきものではありません。詳細については免責事項をご覧ください。
  • 報酬
  • コメント
  • リポスト
  • 共有
コメント
コメントを追加
コメントを追加
コメントなし
  • ピン