## Pretext:JavaScript/TypeScript 中的精准快速多行文本布局 Pretext 是一个纯 JavaScript/TypeScript 库,专为精准高效的多行文本测量和布局而设计,支持多种语言和字符集(包括表情符号和双向文本)。它通过实现自己的文本测量逻辑,利用浏览器字体引擎以确保准确性,避免了代价高昂的 DOM 重排。 **主要特性:** * **无 DOM 测量:** 在无需 DOM 交互的情况下计算文本尺寸,提高性能。 * **多功能渲染:** 支持渲染到 DOM、Canvas、SVG,并最终支持服务器端环境。 * **两个主要用例:** 1. **高度测量:** 快速确定段落高度,无需 DOM 操作。 2. **手动布局:** 提供工具来手动控制换行和定位,以实现自定义布局(例如,砌体布局、Flexbox 实现)。 * **快速性能:** `prepare()` 处理 500 文本批次耗时约 19 毫秒,而 `layout()` 处理相同批次耗时约 0.09 毫秒。 * **API 灵活性:** 提供 `prepare`、`layout`、`prepareWithSegments`、`layoutWithLines` 和 `layoutNextLine` 等函数,以提供不同级别的控制。 Pretext 解锁了虚拟化、遮挡和动态布局调整等高级 Web UI 功能,而无需依赖 CSS 技巧或估算。它非常适合开发时验证和防止布局偏移。演示地址:[chenglou.me/pretext](chenglou.me/pretext) 和 [somnai-dreams.github.io/pretext-demos](somnai-dreams.github.io/pretext-demos)。
## 新闻摘要 - 2024年4月1日
本周新闻头条主要围绕国际紧张局势和国内政治问题。中东冲突加剧,巴基斯坦准备主持美伊对话,伊朗发出强烈警告。 局势正在影响全球市场,导致华尔街连续第五周下跌,并引发对也门胡塞武装参与航运线路的担忧。
国内方面,由于性侵指控,人们呼吁重新命名塞萨尔·查韦斯日。 尽管已提出法案以确保政府停摆期间的工资发放,但国会仍在为联邦雇员的资金问题而挣扎。 海军造船厂的罢工已达成协议结束。
其他新闻,“火星救援”票房大获成功,演员詹姆斯·托尔坎去世,享年94岁。 体育亮点包括亚利桑那州和伊利诺伊州在NCAA篮球比赛中进入四强,以及一名爱尔兰橄榄球运动员出人意料地承诺加入南卡罗来纳州的美式足球队。
## 早期太空与军事计算的幕后英雄:IBM System/4 Pi
IBM的System/4 Pi系列计算机在1960年代至1990年代为关键系统提供动力,但它们的故事鲜为人知。这些紧凑而强大的计算机于1967年左右首次亮相,应用于包括1981年首次飞行在内的航天飞机、Skylab、F-4和F-15等战斗机、潜艇和导弹制导系统等领域。
该系列经历了多代演变,从战术TC、可定制CP和高性能EP型号开始,利用越来越集成的电路和存储技术——从磁芯到半导体。 后来的“Advanced System/4 Pi”迭代,如AP-101(用于航天飞机)和用于AWACS飞机的巨型CC-2,将性能推向了新的高度。
尽管取得了进步,这些计算机由于技术的快速发展,始终面临过时的问题。航天飞机的AP-101最终升级为AP-101S,但到项目结束时,仍然落后于商业处理器。IBM于1994年退出军用计算机市场,出售了其联邦系统部门,但System/4 Pi的遗产仍然存在于它们被开发出的设施和它们所支持的系统中。
## 不要把钱浪费在昂贵的音频线上
Audio Science Review的Amir最近将一副7美元的亚马逊基础款RCA线与一套4000美元的Kimber Kable进行比较,使用了科学的音频分析和听力测试。令人惊讶的结论是:价格实惠的亚马逊线表现得同样出色。
尽管Kimber线拥有优质材料和设计——包括银导体和锁定机制——测试显示在失真、频率响应和相位方面几乎没有可辨别的差异。即使是抖动,发现的微小差异也可能是由于亚马逊线更长造成的。
Amir认为,像亚马逊基础款这样胜任的线缆已经提供了尽可能低的噪音和最宽的带宽,使得昂贵的升级变得没有必要。音频质量的真正瓶颈在于系统中的其他部分——例如放大器或扬声器——而不是线缆本身。虽然主观听力*可能*会发现感知到的差异,但盲测表明这些差异会消失。
最终,投资高端RCA线是一种浪费钱的行为;标准且价格实惠的选择足以提供高质量的音频。