javascript – 如何检测网页中使用了哪个定义的字体?

假设我的页面中有以下CSS规则:

body {
    font-family: Calibri, Trebuchet MS, Helvetica, sans-serif;
}

如何检测用户浏览器中使用了哪一种已定义的字体?

编辑让人想知道为什么我要这样做:我检测的字体包含其他字体不可用的字形,当用户没有字体时我想显示一个链接,要求用户下载该字体,以便他们可以使用我的Web应用程序与正确的字体.

目前我正在显示所有用户的下载字体链接,我想只显示没有安装正确字体的人.

解决方法:

我已经看到它以一种不确定但非常可靠的方式完成.基本上,元素设置为使用特定字体,并且字符串设置为该元素.如果元素的字体集不存在,则采用父元素的字体.因此,他们所做的是测量渲染字符串的宽度.如果它与期望的字体相对于派生字体的预期匹配,则它存在.这对等宽字体不起作用.

这是它的来源:
Javascript/CSS Font Detector (ajaxian.com; 12 Mar 2007)

上一篇:javascript – 获取Web字体以在HTML5 Windows Phone应用程序上运行?


下一篇:我可以在Android布局中为文本加下划线吗?