發現Firefox沒有Chrome快?使用 Mactype+關閉硬件加速 可能會拖慢Firefox的渲染速度

平常使用火狐發現速度仍是比不上Chrome。按理說,火狐換上了量子引擎,又通過那麼屢次優化,速度應該有明顯的提高才對。前端

偶然之下,才發現罪魁禍首是我關閉了硬件加速。segmentfault

爲了解決 Window 糟糕的字體渲染,我使用了Mactype,同時也對firefox進行了一些調整:瀏覽器

將默認的
gfx.content.azure.backends;direct2d1.1,skia,cairo
改成:
gfx.content.azure.backends;direct2d1.1,cairo,skia
將 gfx.direct2d.disabled 改成 true

後來,偶然在 about:support 裏的「決策日誌」這一項發現了一些有趣的信息:wordpress

DIRECT2D   disabled by user: Disabled via gfx.direct2d.disabled
WEBRENDER  opt-in by default: WebRender is an opt-in feature  blocked by runtime: Qualified enable blocked
WEBRENDER_QUALIFIED blocked by env: Not Nvidia
OMTP broken by runtime: OMTP is not supported when using cairo

信息裏關鍵詞有:DIRECT2D,WEBRENDER,OMTP:字體

因此在通過上面對 gfx.content.azure.backends 的修改後,瀏覽器優先使用了cairo去進行繪製,可是cairo剛好又不支持OMTP,並且硬件加速也被咱們關閉了,瀏覽器的渲染速度天然慢下來了3d

彷佛 良好的字體渲染效果瀏覽器的渲染速度 必須取捨一個。其實,firefox自帶字體渲染的配置,經過調整徹底能夠作到與mactype媲美的字體渲染。(我全都要...)日誌

首先是恢復 gfx.content.azure.backends 和 gfx.direct2d.disabled 的默認設置,讓瀏覽器使用硬件加速和OMTP。

其次,停掉Mactype對firefox的渲染。

火狐瀏覽器 DIRECTWRITE 字體調節參數

來源:all.js - DXR

參數 取值範圍 描述
gfx.font_rendering.cleartype_params.gamma [1000,2200] 伽馬值
gfx.font_rendering.cleartype_params.enhanced_contrast [0,1000] 對比度
gfx.font_rendering.cleartype_params.cleartype_level [0,100] Cleartype等級
gfx.font_rendering.cleartype_params.pixel_structure 0 = flat; 1 = RGB; 2 = BGR; 像素結構
gfx.font_rendering.cleartype_params.rendering_mode [0,5] 渲染模式

rendering_mode的取值解釋

  • 0 = 使用字體默認值
  • 1 = 抗鋸齒
  • 2 = GDI 經典;
  • 3 = GDI 天然寬度;
  • 4 = 天然
  • 5 = 天然對稱

個人參數

gfx.font_rendering.cleartype_params.cleartype_level;100
gfx.font_rendering.cleartype_params.enhanced_contrast;200
gfx.font_rendering.cleartype_params.gamma;2000
gfx.font_rendering.cleartype_params.pixel_structure;1
gfx.font_rendering.cleartype_params.rendering_mode;5

附 未調整的firefox、Mactype渲染的firefox、調整後的firefox 對比:

未調整:

未調整

Mactype:

mactype

調整後:

調整後

若是你剛好在使用Mactype+Firefox,那麼你可能並無體驗到新版本Firefox帶來的速度提高

建議你關掉Mactype(或者停用Mactype對Firefox的調整),按照上面的方法打開硬件加速,調整字體配置,從新打開Firefox,感覺先後的渲染速度變化。

相關文章
相關標籤/搜索