(CC Bug 1475148 的 reporter al2m025304)
Dears,
前情提要:Mozilla 在 Bug 1394709 將微軟正黑體加入到 Gecko/Firefox 在 Windows 顯示正體中文時使用的預設字體清單(測試中,目前只在 Beta 以前的 Firefox 有效)。當網頁沒有指定顯示文字所使用的字體,或是在設定頁面中勾選了「忽略您上面的選擇,優先使用頁面指定的字型」,就會根據 font.*.zh-TW 的設定來跟系統中的字體做比對,如果找到微軟正黑體,就會使用它來顯示網頁中的正體漢字。
al2m025304 在 Bugzilla 上另開了 Bug 1475148,打算將 Windows 平台上的 font.name-list.sans-serif.zh-TW 設定,從 "Arial, Microsoft JhengHei, PMingLiU, MingLiU, MingLiU-ExtB" 修改為 "Microsoft JhengHei, PMingLiU, MingLiU, MingLiU-ExtB",從清單中去除 Arial。
在這個變更生效之前,由於 font.name-list.sans-serif.zh-TW 的第一順位是 Arial,當漢字、英數、拉丁字元等 Arial 有包含的字元混合編排時,會優先使用 Arial 來顯示,遇到缺字才會使用微軟正黑體來顯示。這個使用不同字體來顯示的情況經過考古發現是刻意為之(可見 Tim 的文章[1] 與 Bug 88579),除當年 Windows 平台上並沒有內建黑體字之外,網頁顯示時的美觀度以及其他瀏覽器的行為也是考慮條件之一。
變更生效後,會使網頁中需要顯示 sans-serif 文字時,不論拉丁英數字元或是中文字,都使用微軟正黑體來顯示,除非微軟正黑體內有缺字,才會掉到下一順位新細明體繼續比對有沒有這個字元並顯示。
當然,微軟正黑體並不是完全沒有缺點[3],可以到 about:config 當中調整 font.name-list.sans-serif.zh-TW 的參數內容來測試常用的頁面會有什麼差異。我日常會使用的網站應該只剩下維基百科還會有所差異,Bug 上也有幾張對照圖可以參考。
考慮到 2018 年很多網站都已經主動指定顯示字體,內建微軟正黑體的系統也已經夠多,XP 的比例也越來越低,我原則上會同意且支持這個修改,如果有任何意見歡迎直接在群組或 Bug 上參與討論。
Peter
[1]
https://blog.timc.idv.tw/posts/firefox-default-zh-tw-font/[2]
https://bugzilla.mozilla.org/show_bug.cgi?id=88579[3]
https://zh.wikipedia.org/wiki/%E5%BE%AE%E8%BB%9F%E6%AD%A3%E9%BB%91%E9%AB%94#%E5%B7%B2%E7%9F%A5%E5%95%8F%E9%A1%8C