如何为 google 字体指定 return 字体格式?

How to specify return type format for google fonts?

我正在尝试使用以下代码段从 google 字体加载字体

<link href="https://fonts.googleapis.com/css?family=Montserrat:400,400i,700,700i" rel="stylesheet">

它在 css

之后加载
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  src: local('Montserrat Italic'), local('Montserrat-Italic'), url(https://fonts.gstatic.com/s/montserrat/v10/-iqwlckIhsmvkx0N6rwPmv8zf_FOSsgRmwsS7Aa9k2w.woff2) format('woff2');
  unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  src: local('Montserrat Italic'), local('Montserrat-Italic'), url(https://fonts.gstatic.com/s/montserrat/v10/-iqwlckIhsmvkx0N6rwPmj0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}

问题是returnswoff2字体格式。有没有办法加载 woffttf 格式而不是 woff2?因为 woff2 在旧版浏览器中无法正确呈现。

Google 字体将进行浏览器嗅探并尝试 serve up only the relevant font formats

这意味着加载的 CSS 将不同 取决于加载它的浏览器。

他们do support 旧浏览器。特别是:

  • Google Chrome: version 4.249.4+
  • Mozilla Firefox: version: 3.5+
  • Apple Safari: version 3.1+
  • Opera: version 10.5+
  • Microsoft Internet Explorer: version 6+

由于google不能帮助我们直接下载字体,我没有找到方法,但是你可以查看这个github repo来帮助你:

https://github.com/google/fonts/

如果您不愿意专门控制要使用的格式,一种方法是简单地使用您自己的样式表 src 更改 and/or 从所需目标获取样式声明.

如上所述,google pre-determines 需要哪些文件类型并且只提供这些文件类型。他们主要通过请求者的 User-Agent header.

幸运的是,这个 header 可以在开发工具中模拟,所以如果您需要 .ttf 资源,您可以使用 Blackberry 或其他类似的旧设备来获取实际 字体网址: