<ruby id="9ue20"></ruby>

  1. 
    

      国产午夜福利免费入口,国产日韩综合av在线,精品久久人人妻人人做精品,蜜臀av一区二区三区精品,亚洲欧美中文日韩在线v日本,人妻av中文字幕无码专区 ,亚洲精品国产av一区二区,久久精品国产清自在天天线
      網易首頁 > 網易號 > 正文 申請入駐

      行業觀察|Pretext:前端排版的一次“去 DOM 化”嘗試,Cheng Lou 想重新定義文本布局

      0
      分享至


      前端世界里,有一個問題看起來很小,卻一直很難優雅解決:我怎么在不把文字真正塞進 DOM、也不觸發布局回流的前提下,提前知道這段話會占多高、會斷成幾行、每一行會長什么樣?

      最近,前 React 核心成員、React Motion 作者、現 Midjourney 工程師 Cheng Lou 開源了一個新項目Pretext,就是沖著這個老問題來的。它不是新的 CSS 框架,也不是富文本編輯器,而是一個更底層的能力:用 JavaScript/TypeScript 在 DOM 之外做多行文本測量與布局。

      如果說傳統網頁文本布局的邏輯大多掌握在瀏覽器排版引擎手里,那么 Pretext 做的事,可以理解為:把其中一部分“測量和換行”的能力,提取成一個開發者可調用的純計算過程

      它到底解決了什么問題?

      在今天的 Web 開發里,如果你想知道一段文字最終有多高,最常見的辦法仍然是老三步:

      先把文字渲染進頁面,再讓瀏覽器完成布局,最后通過getBoundingClientRect()offsetHeight之類的 API 去讀結果。

      問題在于,這套方式雖然直觀,但代價不低。因為一旦你頻繁插入文本、讀取尺寸、再調整布局,就很容易觸發瀏覽器的 reflow。放在少量元素上問題不大,可一旦進入虛擬列表、瀑布流、聊天流、信息卡片墻這些高密度場景,性能和視覺穩定性就會迅速變差。

      Pretext 的核心思路,是繞開這條路徑。它不依賴“先渲染,再測量”的 DOM 方案,而是基于 Canvas 的measureText()和一套自建的換行邏輯,在 JavaScript 里提前算出結果 。

      Pretext 的核心:把文本布局拆成 prepare 和 layout

      Pretext 最有代表性的設計,是把文本處理拆成兩個階段。

      第一階段是prepare
      在這個階段,庫會對文本做一次性的準備工作:規范空白字符、做文本分段、應用一些粘連和換行規則,并借助 Canvas 去測量各個片段的寬度,然后把這些信息緩存起來。

      第二階段是layout
      到了這一步,就不再重新測量文本,也不訪問 DOM,而是直接基于前面緩存下來的寬度數據,做純計算式的換行和高度推導。換句話說,prepare 像預處理,layout 才是高頻熱路徑

      這也是它性能上最關鍵的地方。項目倉庫給出的一個基準快照顯示:在一組 500 段文本的測試里,prepare()大約需要 19ms,而layout()只需要約 0.09ms 。
      這意味著如果只是容器寬度變化、窗口 resize、卡片重新排布,理論上你只需要重復執行layout(),而不必重復做完整測量。

      為什么它會讓前端工程師興奮?

      因為它碰到的是一個很基礎、但影響很大的點:文本尺寸是很多 UI 布局的起點

      比如虛擬列表。過去很多列表要么估高、要么先渲染后修正,因此容易出現滾動跳動和位置漂移。Pretext 的價值在于,它讓開發者有機會在文本真正進 DOM 之前,就先把每個 item 的高度算出來,從而更穩定地完成預排版。

      再比如聊天場景。對消息氣泡、AI 流式輸出、逐字增長內容來說,文本長度一直在變化。如果每來一點內容就重新觸發 DOM 測量,成本會很高。Pretext 這種“預處理一次,后續高頻布局”的模式,會更適合這類實時場景 。

      它還有一個更有想象力的方向:手動控制每一行文本
      Pretext 不只是能告訴你“這段話有多高”,它還提供了layoutWithLines()walkLineRanges()layoutNextLine()這樣的 API,允許你拿到逐行結果,甚至給每一行指定不同的可用寬度。這意味著開發者可以做出更復雜的文字繞排、異形排版、多列布局,甚至讓文本圍繞圖片、曲線或動態元素流動。

      從官方演示也能看出,Pretext 想解鎖的并不只是“更快測高”,而是把瀏覽器里原本不太好做的高級文本布局,變成可編程能力

      它和傳統排版系統有什么不同?

      Pretext 并不是要替代瀏覽器的完整文本渲染引擎。它目前瞄準的是比較常見的一類文本場景,項目文檔明確提到,它主要針對類似下面這組默認行為:

      • white-space: normal
      • word-break: normal
      • overflow-wrap: break-word
      • line-break: auto

      同時也支持pre-wrap這類保留空格、Tab 和換行的情況。

      這點很重要。因為它說明 Pretext 不是“重新發明瀏覽器的一切文本排版”,而是在最常見、最工程化的文本布局需求里,拿出一套足夠快、足夠準、足夠可控的方案

      換句話說,它更像一個前端基礎設施庫,而不是一個視覺層組件庫。

      它為什么對 AI 時代更有吸引力?

      Pretext 項目介紹里有一句很值得玩味:它使用瀏覽器自己的字體引擎作為 ground truth,迭代方式“very AI-friendly” 。

      這背后的意思是,Pretext 的輸入輸出關系非常清晰:
      給我一段文本、字體、寬度、行高,我返回高度、行數、每行內容、起止游標。這樣的接口對于 AI 代碼助手、生成式 UI 系統、自動排版工具來說特別友好,因為它天然適合被程序化調用。

      放在今天的產品趨勢里看,這件事很有現實意義。無論是 AI 生成頁面、自動排版郵件、設計工具中的文本模塊,還是游戲 UI、Canvas/SVG 繪制系統,它們都越來越需要一種不依賴真實 DOM、但又足夠貼近瀏覽器文字行為的布局能力。Pretext 恰好卡在這個位置上 。

      Pretext 真有“幾百倍提升”那么夸張嗎?

      這里需要稍微冷靜一點。

      外部媒體很喜歡用“300 倍到 600 倍更快”這樣的標題來描述 Pretext。這種說法不能說完全沒有依據,但非常依賴測試口徑:你比較的是哪一部分流程,測的是一次性準備還是高頻重復布局,場景是 10 段文本還是 500 段文本,是否包含真實 DOM 插入與讀取成本,這些都會顯著影響結果。

      從官方資料來看,更穩妥的表述應該是:
      Pretext 把昂貴的文本測量工作前置并緩存,把后續高頻布局變成純算術過程,因此在“重復 layout、多次 resize、批量文本預排版”這類場景里,有機會顯著快于傳統 DOM 測量方案

      所以,與其說它神奇地“全面替代瀏覽器布局”,不如說它精準擊中了一個長期性能痛點。

      它可能帶來什么行業影響?

      如果 Pretext 真的被更多項目采用,它的意義可能不只是一個工具庫。

      第一,它可能改變大家處理文本布局的習慣。
      過去很多前端團隊默認接受“文本高度只能靠 DOM 讀出來”,而 Pretext 提供了另一種思路:能不能在渲染之前先算?

      第二,它可能推動更多“去 DOM 化”的 UI 基礎設施。
      一旦文本測量可以脫離 DOM,那么基于 Canvas、SVG、WebGL 的界面系統會更容易做;服務端預排版、邊緣渲染、跨端統一文本內核這些方向,也會更值得探索 。

      第三,它可能反過來刺激瀏覽器生態。
      因為 Pretext 的流行,本質上是在提醒業界:前端開發者其實一直缺少一種無副作用、可預測、排版前可調用的文本測量能力。如果這種需求持續放大,未來瀏覽器標準和原生 API 是否會補上這一層,值得觀察。

      結語

      Pretext 之所以值得關注,不只是因為它快,而是因為它觸碰到了前端里一個非常“底層”的問題:文本布局到底能不能從瀏覽器黑盒里被部分拿出來,變成開發者自己掌控的計算過程?

      Cheng Lou 給出的答案是:可以,而且已經能跑起來了。

      對于普通開發者來說,Pretext 可能首先是一個高性能文本測量庫;但從更長遠看,它也許代表著一種新的前端思路——把原本依賴 DOM 才能知道的布局結果,提前變成可編程、可緩存、可組合的數據

      如果這個方向繼續成熟,未來很多看起來“只能靠瀏覽器現場決定”的排版問題,可能都會被改寫。

      *本文依據網絡搜集數據整理,由AI工具輔助完成
      All rights reserved. Copyright ? 2026


      特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

      Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

      相關推薦
      熱點推薦
      字節是怎么虧掉200億美元的?

      字節是怎么虧掉200億美元的?

      36氪財經
      2026-05-08 16:05:33
      俄羅斯公布勝利日閱兵日程,再次呼吁各國及時從基輔撤離人員

      俄羅斯公布勝利日閱兵日程,再次呼吁各國及時從基輔撤離人員

      上觀新聞
      2026-05-08 13:44:05
      一路走好!香港著名填詞人逝世終年60歲,曾為張國榮,鄭秀文填詞

      一路走好!香港著名填詞人逝世終年60歲,曾為張國榮,鄭秀文填詞

      粵睇先生
      2026-05-07 23:56:37
      CBA官方罰單:焦海龍賽后噴球迷罰款3萬 山西主帥潘江罰款1萬

      CBA官方罰單:焦海龍賽后噴球迷罰款3萬 山西主帥潘江罰款1萬

      醉臥浮生
      2026-05-08 21:19:36
      心理學有個殘忍發現:讓別人對你產生敬畏感的,不是你的強勢,不是你的反擊,而是你骨子里的這兩種“人性破綻”利用術

      心理學有個殘忍發現:讓別人對你產生敬畏感的,不是你的強勢,不是你的反擊,而是你骨子里的這兩種“人性破綻”利用術

      心理觀察局
      2026-05-08 09:32:17
      你發現沒有,凡是結婚時不主動提彩禮的,女方家庭通常就是以下兩種情況

      你發現沒有,凡是結婚時不主動提彩禮的,女方家庭通常就是以下兩種情況

      心理觀察局
      2026-05-08 09:32:04
      中超第2位下課主帥誕生!倒數第2調整教練組,洋帥下課

      中超第2位下課主帥誕生!倒數第2調整教練組,洋帥下課

      中超偽球迷
      2026-05-08 15:48:20
      哈利伯頓:亞歷山大騙犯規的討論被夸大了 本身就是籃球的一部分

      哈利伯頓:亞歷山大騙犯規的討論被夸大了 本身就是籃球的一部分

      北青網-北京青年報
      2026-05-08 20:26:08
      離婚1年后,女子再次思念前夫,發了句“在干嘛”,他立馬回復:你要是再多說一句話,明天我就找你復婚!

      離婚1年后,女子再次思念前夫,發了句“在干嘛”,他立馬回復:你要是再多說一句話,明天我就找你復婚!

      品讀時刻
      2026-05-08 09:09:58
      iOS 26.5下周正式推送,一口氣上線五大新功能

      iOS 26.5下周正式推送,一口氣上線五大新功能

      環球網資訊
      2026-05-08 10:49:06
      在朝鮮生活三年,說實話:它的發達與落后,都超出你的想象

      在朝鮮生活三年,說實話:它的發達與落后,都超出你的想象

      老特有話說
      2026-05-07 17:41:09
      欠了快400億,罵了整十年,華西村硬是靠一筆意外投資活過來了

      欠了快400億,罵了整十年,華西村硬是靠一筆意外投資活過來了

      小莜讀史
      2026-05-07 19:10:59
      CBA又鬧出大笑話,衛冕冠軍太拉胯,球迷怒噴沒有裁判早淘汰

      CBA又鬧出大笑話,衛冕冠軍太拉胯,球迷怒噴沒有裁判早淘汰

      宗介說體育
      2026-05-08 10:01:46
      廣東網紅“撿瓶小狗”疑被“虐寵團伙”盯上,密謀對其投毒,主人隱私信息也遭曝光:目前小狗全天被關在家,相關證據將交由公安處理

      廣東網紅“撿瓶小狗”疑被“虐寵團伙”盯上,密謀對其投毒,主人隱私信息也遭曝光:目前小狗全天被關在家,相關證據將交由公安處理

      極目新聞
      2026-05-08 20:01:24
      林詩棟扛住壓力!3-0打敗韓國一哥,為國乒拿下寶貴1分王皓怒吼

      林詩棟扛住壓力!3-0打敗韓國一哥,為國乒拿下寶貴1分王皓怒吼

      曹說體育
      2026-05-08 21:17:18
      皇馬重磅:穆里尼奧和老佛爺直接通話,開出執教皇馬的5大條件!

      皇馬重磅:穆里尼奧和老佛爺直接通話,開出執教皇馬的5大條件!

      老汆古裝影視解說
      2026-05-07 17:46:28
      相伴25年狀態截然不同,76歲張藝謀盡顯滄桑,44歲陳婷依舊年輕

      相伴25年狀態截然不同,76歲張藝謀盡顯滄桑,44歲陳婷依舊年輕

      星娛叨叨社
      2026-05-08 14:04:11
      松島輝空社媒:已拿銅牌沖擊金牌!張本智和放話,德國2次被誤判

      松島輝空社媒:已拿銅牌沖擊金牌!張本智和放話,德國2次被誤判

      排球黃金眼
      2026-05-07 23:40:50
      萬萬沒料到,丁克大半輩子的張鐸,如今在46歲迎來了人生高光時刻

      萬萬沒料到,丁克大半輩子的張鐸,如今在46歲迎來了人生高光時刻

      TVB的四小花
      2026-05-08 11:29:33
      成都演唱會這天,人情冷暖、江湖地位,在謝娜身上展現得淋漓盡致

      成都演唱會這天,人情冷暖、江湖地位,在謝娜身上展現得淋漓盡致

      夢在深巷qw
      2026-05-07 07:46:01
      2026-05-08 22:11:00
      創新文化促進會
      創新文化促進會
      組織開展中關村創新文化研究
      572文章數 38關注度
      往期回顧 全部

      科技要聞

      SK海力士平均獎金600萬 工服成相親神器

      頭條要聞

      "大衣哥"再度翻紅:五一假期3天跑5場 累到"要保命"

      頭條要聞

      "大衣哥"再度翻紅:五一假期3天跑5場 累到"要保命"

      體育要聞

      他把首勝讓給隊友,然后用一年時間還清賬單

      娛樂要聞

      古天樂被曝隱婚生子,新娘竟是她

      財經要聞

      特朗普全球關稅又受阻,也能退款?

      汽車要聞

      MG 4X實車亮相 將于5月11日開啟盲訂

      態度原創

      數碼
      教育
      手機
      家居
      時尚

      數碼要聞

      華碩天選7系列發布 天選7 Pro/Pro Max已開啟預約

      教育要聞

      關于舉辦“圖畫書里的中國”2026年山東省原創兒童圖畫書素材創意大賽、原創兒童圖畫書講讀大賽的通知

      手機要聞

      大疆Osmo Pocket 4P開啟預約

      家居要聞

      流動的尺度 打破家的形式主義

      海魂衫搭配白色,更解暑!

      無障礙瀏覽 進入關懷版 主站蜘蛛池模板: 18禁又污又黄又爽的网站不卡| 五月天婷婷在在线视频| 久久国产免费观看精品| 五月婷视频| 日韩另类欧美日韩| 成年女性特黄午夜视频免费看| 国产福利深夜在线观看| 四虎影视在线永久免费观看| 国产视频资源在线观看| 亚洲精品乱码免费精品乱| 中文字幕变态另类| 东京热无码av| av天堂久久天堂av| 麻花传媒在线观看免费| 亚洲激情综合中文字幕| 一级片免费网站| 国产免费一区二区不卡| 国产精品一级在线播放| 樱花影院电视剧免费| 亚洲天堂一区二区成人在线| 色偷偷成人综合亚洲精品| 激情文学视频神马久久| 精品人妻伦一二三区久久| 国产精品无遮挡在线观看| 99中文精品7| 黄色AV成人网站| 开心一区二区三区激情| 国产成人亚洲精品狼色在线| 呦男呦女精品视频十区| 国产青草自拍视频在线| 日韩午夜福利片段在线观看| 欧美xxxx做受欧美| 欧美日韩精品一区二区三区| 亚洲va中文字幕无码久久不卡| www.亚洲成年人网站| 天堂在线中文网www| JAPANESE精品中国少妇| 精品裸模一区二区三区| 亚洲高清国产自产拍av| 欧洲无码视频| 玖玖一区|