2017-05-29 131 views
3

我正在制作机器人“谈话和响应”控制台,并且希望能够在控制台中更改字体。我知道如何更改字体,但如果给定的字体不是实际的HTML字体,我不想更改字体。检查一个字符串是否是JavaScript中的html字体

示例:用户输入Arial,命令通过。用户输入I lost my mommy,该命令不通过,计算机向用户警告该命令无效。

我显然不想创建一个包含所有HTML字体的非常大的数组。这没有意义。

如果jQuery解决方案有效,请告诉我。我在我的代码中使用jQuery。

+3

你对Array的想法,这实际上是我能想到的唯一想法。看看这[所有谷歌字体的JSON数组](https://www.googleapis.com/webfonts/v1/webfonts?key=AIzaSyBwIX97bVWr3-6AIUvGkcNnmFgirefZ6Sw)应该基本上涵盖所有您的需求。 – Luca

+0

看看fontSpy图书馆...可能会帮助https://github.com/patrickmarabeas/jQuery-FontSpy.js – charlietfl

+0

luca kiebels建议可能会与bloom过滤器结合使用以大幅减少加载时间... –

回答

1

JavaScript/CSS Font Detector是一个图书馆,可能会有所帮助。

包括图书馆,并呼吁

detective.detect('[font name]')); 

这是不正确的字体识别,但它可能对你所要完成的工作是什么。

detect根据提供的字符串值是否与浏览器中可用的字体匹配返回布尔值。

function isFont(fontName) { 
     return fontName ? detective.detect(fontName) : false; 
} 
+0

这很好,但你能给我一个例子吗?我阅读指南,它有点含糊。 – Hazard

相关问题