發布日期:2025 年 2 月 12 日
網路算繪引擎的工作範圍廣泛,其中許多工作 (例如樣式、媒體或版面配置) 都是由標準驅動。這些標準可確保獨立的引擎能夠互通,進而讓網路蓬勃發展。不過,某些較精細的細節 (例如文字在像素層級的顯示方式) 通常會交由標準機構解釋,最後通常會依賴瀏覽器執行的作業系統。
2020 年,Microsoft Edge 迎來難得的機會,可以完全取代其基礎轉譯引擎。Edge 已改用 Chromium,不再是直接使用 Windows API 的 Windows 專屬平台,而是成為真正的跨平台網頁轉譯器。在改用 Chromium 之前,Edge 完全仰賴名為 DirectWrite 的 Windows API 來轉譯文字。不過,Chromium 會依賴 Skia,這是一款功能強大且具備彈性的跨平台圖形引擎,可從 API 中抽象出許多作業系統專屬的程式碼。
在 Edge 轉換至 Chromium 的過程中,Edge 團隊有幸收集到使用者對 Chromium 轉譯引擎的意見回饋。其中有一個重要意見回饋,許多 Edge 使用者表示文字看起來「褪色」,且與 Windows 其他部分的文字不一致。
團隊十分重視這項意見回饋,並進行了一些調查。雖然 Skia 會在 Windows 上使用 DirectWrite 執行特定功能 (例如字型查詢),但最終的文字算繪作業實際上會由 Skia 直接處理。使用者認為畫面「過度淡化」的其中一個主要原因,是文字算繪的內部對比度和伽瑪設定。
在 Edge 的 Chromium 架構引擎與先前引擎之間,我們發現文字對比度和伽瑪值有兩個主要差異。首先,Skia 不會從 Windows ClearType 調校器擷取文字對比度和 gamma 值。其次,文字對比度和伽瑪的預設值與 Edge 的 DirectWrite 文字堆疊不同。
Edge 團隊去年新增了支援功能,可直接在 Chromium 中尊重 ClearType 調諧器值。這讓以 Chromium 為基礎的瀏覽器使用者能夠在 Windows 上控制文字對比和伽瑪設定。雖然這是朝正確方向邁進的重要一步,但大多數使用者通常不會調整系統層級的文字對比和伽瑪設定。因此,這趟旅程的下一階段是認真考慮調整網頁和瀏覽器 UI 文字內容的預設文字對比和伽瑪設定。
變更網頁上的文字外觀是一項大工程。網站一向以文字為主,因此需要高品質的文字引擎。很明顯,文字對比度值需要提高,但我們需要資料來判斷調整幅度。
Edge 團隊在 2021 年開始嘗試使用各種文字對比度值。經過大量使用者研究後,Edge 和 Chromium 的團隊成員一致認為,對比度值 1.0 與 Chromium 推出前的 Edge 文字算繪相近,與其他原生 Windows 應用程式相比,看起來也一致。
Edge 團隊認為我們的研究和實驗對 Windows 上的整體 Chromium 社群有益,因此我們將研究結果分享給 Google 的 Chrome 團隊,後者也透過實驗確認了這些結果。接著,我們會繼續為 Windows 版本啟用新的對比度值,從 Chrome 132 開始。
如今,所有 Windows 版 Chromium 瀏覽器使用者都能從過去幾年共享的研究、實驗和實作中受益。
特別感謝 Microsoft 的 Ian Prest、Daniel Libby 和 Alison Maher,以及 Google 的 Dominik Röttsches、David Yeung、Ben Wagner 和 Brian Osman,感謝他們對這個專案的貢獻!