IT之家 1 月 29 日消息,科技媒体 phoronix 昨日(1 月 28 日)发布博文,报道称开源字体渲染引擎 FreeType 合并关键优化,重构其 LCD 过滤代码路径,优化 ClearType 类渲染技术。

IT之家注:FreeType 是一个免费、开源的软件库,专门用来把字体文件(比如你电脑里的 .ttf 文件)转换成屏幕上能看到的文字图像,是 Linux、Android 和很多软件显示文字的幕后功臣。

此次优化的核心,在于改变了滤波器的应用逻辑。FreeType 此前处理 ClearType 类渲染时,通常会对整个位图(Bitmap)执行覆盖式的 LCD 滤波操作,无论像素点是否包含实际数据。

代码摒弃了这种“粗放”的处理方式,转而采用直接渲染模式,仅针对包含数据的“非零跨度”(non-zero spans)应用滤波,这种“按需处理”的策略极大地减少了无效计算量,从而在底层逻辑上消除了性能瓶颈。

根据提交的代码说明,在字体大小超过 32 ppem(每 em 像素数,大致对应屏幕上的中等字号)时,渲染速度提升幅度达到了 40% 左右。

随着字号进一步增大,由于需要处理的空白区域相对增多,新算法避免无效计算的优势将更加明显,性能提升幅度也会随之扩大。

该项优化的代码由开发者 Alexei Podtelezhnikov 提交,并已于昨日正式合并至 FreeType 的 Git 代码库中。Alexei Podtelezhnikov 在提交记录中强调:“将 LCD 滤波器应用于跨度(spans)而非整个图像,能显著改善 ClearType 类渲染的性能。”