【问题标题】:Missing fonts on web pages [closed]网页上缺少字体[关闭]
【发布时间】:2013-10-24 21:32:49
【问题描述】:

我正在尝试在网页上使用并非所有客户端都本机存在的字体。有没有办法检测到丢失的字体并通知用户在哪里下载?

【问题讨论】:

  • 为什么不让所有使用@font-face的人都可以使用它?
  • 首先,我尝试使用从 fontsquirrel 列入黑名单的字体。我需要对其进行转换,以便我们可以向客户展示该站点的情况,然后我们将购买许可证。其次,我希望那些投反对票的人回答他们投反对票的原因。

标签: php html css fonts


【解决方案1】:

@font-face 的方式要优雅得多,但是如果你想通知用户,这里有一个解决方案(虽然我强烈建议你使用@font-face):

您可以使用像FontChecker 这样的脚本来检查字体是否可用。它依赖于MooTools 并被这样调用:

window.addEvent('domready',function() {
  var fc = new FontChecker();
  if (!fc.check('Some Font')) {
    alert('Please install "Some Font"!');
  }
});

如果 某些字体 不可用,则会出现一条消息。

如果您不使用 MooTools,其他库或 vanilla JS(=没有库的普通 JS)也有类似的脚本。或者只是重写它,it's quite short

其他一些脚本(我不知道,我只用FontChecker):

【讨论】:

  • 我相信这就是我想要的。我会在几分钟内接受你:) 谢谢大家的回复。
【解决方案2】:

如果该字体已获得在公共网页上使用的许可,您可以使用@font-face,如此处其他答案中所引用的那样。

但是,大多数商业字体未获得网络使用许可,因为任何人都可以检查您的 CSS 并自己下载字体。

最好的办法是从 google web fonts 等服务中选择不同的字体并使用 @font-face。

http://www.google.com/fonts

【讨论】:

  • 我知道这一点。我主要想检测计算机上是否存在该字体(无需访问文件)。例如(有问题),我想使用 pc 原生的 cambria 字体。
【解决方案3】:

另一种方法是cufon。但它不是纯 CSS,它使用 JS 来创建基于画布的字体。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-03
    • 1970-01-01
    • 1970-01-01
    • 2012-03-23
    • 1970-01-01
    • 1970-01-01
    • 2021-03-12
    • 2017-03-02
    相关资源
    最近更新 更多