为什么 Firefox 不使用 Consolas 字体,而 fc-match Consolas 可以显示它?

为什么 Firefox 不使用 Consolas 字体,而 fc-match Consolas 可以显示它?

访问使用 Consolas 等宽字体的页面(例如 [1],[3] 处的最小示例)会呈现 Nimbus Mono。

我根据 arch wiki[1] 的说明,使用 ttf-ms-win8 包和同一台机器上安装的 Windows 8.1 中的字体文件安装了 Microsoft 字体。Chromium 正确使用了 Consolas,而 Firefox 则没有变化。

使用 fc-match,我得到以下结果:

fc-match consolas
  consola.ttf: "Consolas" "Regular"
fc-match Courier
  n022003l.pfb: "Nimbus Mono" "Regular"
fc-match 'Consolas,"Liberation Mono",Menlo,Courier,monospace'
  consola.ttf: "Consolas" "Regular"

第三个示例是网站 css 中的 font-family 行。我假设 Firefox 不会直接将其传递给 fc-match,但由于缺乏阅读代码的能力,我没有任何想法。

问题是:为什么指定后 Firefox 不使用 consolesolas 字体?


软件版本:

  • 铬 48.0.2564.103
  • Firefox 44.0
  • 字体配置 2.11.1-2
  • 拱门测试

笔记

  • [4] 是一个类似的问题,但是 consolesolas 是一种 truetype 字体,因此引用的 Firefox 不支持位图字体的事实与此无关。

参考

  1. https://github.com/necolas/idiomatic-css
  2. https://wiki.archlinux.org/index.php/Microsoft_fonts
  3. http://absolute.fail/consolas_problem.html
  4. Firefox 30 无法识别字体

答案1

我有同样的问题很长时间了,GitHub 看起来太麻烦了。最后我安装了fontconfig-ttf-ms-字体今天问题解决了!

相关内容