IT之家 1 月 29 日消息,科技媒體 phoronix 昨日(1 月 28 日)發(fā)布博文,報道稱開源字體渲染引擎 FreeType 合并關(guān)鍵優(yōu)化,重構(gòu)其 LCD 過濾代碼路徑,優(yōu)化 ClearType 類渲染技術(shù)。
IT之家注:FreeType 是一個免費、開源的軟件庫,專門用來把字體文件(比如你電腦里的 .ttf 文件)轉(zhuǎn)換成屏幕上能看到的文字圖像,是 Linux、Android 和很多軟件顯示文字的幕后功臣。
此次優(yōu)化的核心,在于改變了濾波器的應(yīng)用邏輯。FreeType 此前處理 ClearType 類渲染時,通常會對整個位圖(Bitmap)執(zhí)行覆蓋式的 LCD 濾波操作,無論像素點是否包含實際數(shù)據(jù)。
新代碼摒棄了這種“粗放”的處理方式,轉(zhuǎn)而采用直接渲染模式,僅針對包含數(shù)據(jù)的“非零跨度”(non-zero spans)應(yīng)用濾波,這種“按需處理”的策略極大地減少了無效計算量,從而在底層邏輯上消除了性能瓶頸。
根據(jù)提交的代碼說明,在字體大小超過 32 ppem(每 em 像素數(shù),大致對應(yīng)屏幕上的中等字號)時,渲染速度提升幅度達(dá)到了 40% 左右。
隨著字號進(jìn)一步增大,由于需要處理的空白區(qū)域相對增多,新算法避免無效計算的優(yōu)勢將更加明顯,性能提升幅度也會隨之?dāng)U大。
該項優(yōu)化的代碼由開發(fā)者 Alexei Podtelezhnikov 提交,并已于昨日正式合并至 FreeType 的 Git 代碼庫中。Alexei Podtelezhnikov 在提交記錄中強調(diào):“將 LCD 濾波器應(yīng)用于跨度(spans)而非整個圖像,能顯著改善 ClearType 類渲染的性能?!?/p>
廣告聲明:文內(nèi)含有的對外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時間,結(jié)果僅供參考,IT之家所有文章均包含本聲明。