gravatar

font render in Mac OS X

font rendering 在 Mac OS X 下, 實在有夠慢的囉. iTerm 內部的寫法是使用字型貼圖, 然後會把它 cache 起來, 等下次會用到再拿來貼到終端機螢幕上. 不過有幾個缺點, 他對不同顏色的字都會做 cache, 這樣一來可能減少了 cache 真正可儲存的字數, 第二當cache滿了要丟掉某些東西, 他找最少使用次數的字型image cache方法可能不太好, 看到 for 在裡面就很想改掉. anyway 我嘗試把它改成不要作 cache 以及 search/replace, 直接 render 後畫到 terminal 畫面上, 但是速度更是慢到不行. 以前的 iTerm 大概就是這樣做的吧, 所以速度上一直很讓人詬病. 以前做 CrazyTerm 時候, 連 windows 直接不做 font image, 直接把字畫在 Windows DC 上也都很快. Mac OS X 在這方面只有 font rendering 的結果比 windows 美觀吧, 看網頁配上很好的 rendering 字型及 antialias 看起來就好像書面雜誌一樣. iTerm 在這方面不知道要怎樣去改它的文字 rendering 架構, 雖然 Mac OS X 又有提供 Quartz 2D 這樣的東西, 不知道改過去效能又能提升多少.

gravatar

原來你是 CrazyTerm 的作者?

gravatar

ya. you got it. 但 comment 跟這篇文章好像無關 :P