2000万人围观,React大佬开源神作“干翻”前端!速度飙500倍,狂揽2.8万颗星
智东西4月1日消息,上个周末,前端大神的开源项目Pretext迅速引爆GitHub,至今Star数已飙升至2.82万,开发者的官宣推文浏览量已超2100万次,成为全球开发者社区焦点。
Cheng Lou在社交平台X上对Pretext给出了极高评价:“未来几年UI工程领域最重要的基础组件之一。”
Pretext还支持开发者所能想到的所有语言,兼容各种浏览器特性差异。不过他也提到Pretext比传统方式快约500倍的对比可能不公平。
其强大的灵活性更是激发了开发者的创作热情,目前社交平台X上已掀起Pretext应用热潮,如用Pretext做游戏、MV,手搓文字环绕、流动效果。
知名歌曲Bad Apple!!那段经典、经常被拿来各种魔改的黑白影绘视频,开发者让歌词文本通过位移变形特效,拼出了人物、城堡的轮廓,且随音乐旋律丝滑变化。
新方案采用自研文本测量逻辑,以浏览器自身的字体引擎作为真实基准,既保证了排版的精准度,又将渲染效率提升至新高度,更重要的是,这种创新架构天然适配AI迭代优化,或为未来前端排版的智能化、自动化发展预留巨大空间。
其对数十万个高度各不相同的文本框进行遮挡虚拟化(Occlusion Virtualization)处理,无需进行DOM尺寸测量,仅通过一次无缓存、线性遍历高度的计算即可完成可见性判断,实现120fps流畅滚动与窗口缩放。
其页面的聊天气泡能自动贴合内容,可以看到在滑动时聊天框的宽度会紧紧贴合文字内容,不会撑满页面整行。
浏览多个页面时,其能实现响应式动态多栏杂志排版,像杂志那样实现多栏布局,同时做到自适应屏幕、内容动态变化。
Pretext还能快速制作可变字体宽度的ASCII字符画,也就是只包含英文字母、数字、标点符号、少量符号等基础符号拼出图案、人脸、风景、logo等字符画。
那些常见的自动增高输入框、折叠面板、多行文本居中、纯Canvas多行文本,以及其他过去在CSS里给网页排版、布置样式等非常棘手的难题,如今都变得简单到不值一提。
有开发者对比了使用Pretext和DOM对整本小说即时分页,要求每页都有预览,Pretext每次运行只需2-3毫秒,而DOM需要超过100毫秒。
开发者直接在X上来了一场前端炫技。
下面是英国当红制作人Fred again与Daft Punk核心成员Thomas Bangalter的DJ合作现场,用文字把节奏呈现了出来。
还有文字版的打砖块小游戏,砖块跳动时,页面上的大小文字都会随之流畅变形。
传统网页测文字大小、位置要频繁读DOM,非常慢还会卡,同时这类尺寸测量还必须进行批量处理,这会破坏UI组件边界独立的编程模型。
Pretext方案不靠DOM测量,会先对文本进行布局,再通过getBoundingClientRect粗略读取尺寸信息。Cheng Lou认为,最大的性能提升,永远来自架构层面的变革。
将prepare替换为prepareWithSegments,然后执行以下操作: