我正在制作机器人“谈话和响应”控制台,并且希望能够在控制台中更改字体。我知道如何更改字体,但如果给定的字体不是实际的HTML字体,我不想更改字体。检查一个字符串是否是JavaScript中的html字体
示例:用户输入Arial
,命令通过。用户输入I lost my mommy
,该命令不通过,计算机向用户警告该命令无效。
我显然不想创建一个包含所有HTML字体的非常大的数组。这没有意义。
如果jQuery解决方案有效,请告诉我。我在我的代码中使用jQuery。
我正在制作机器人“谈话和响应”控制台,并且希望能够在控制台中更改字体。我知道如何更改字体,但如果给定的字体不是实际的HTML字体,我不想更改字体。检查一个字符串是否是JavaScript中的html字体
示例:用户输入Arial
,命令通过。用户输入I lost my mommy
,该命令不通过,计算机向用户警告该命令无效。
我显然不想创建一个包含所有HTML字体的非常大的数组。这没有意义。
如果jQuery解决方案有效,请告诉我。我在我的代码中使用jQuery。
JavaScript/CSS Font Detector是一个图书馆,可能会有所帮助。
包括图书馆,并呼吁
detective.detect('[font name]'));
这是不正确的字体识别,但它可能对你所要完成的工作是什么。
detect
根据提供的字符串值是否与浏览器中可用的字体匹配返回布尔值。
function isFont(fontName) {
return fontName ? detective.detect(fontName) : false;
}
这很好,但你能给我一个例子吗?我阅读指南,它有点含糊。 – Hazard
你对Array的想法,这实际上是我能想到的唯一想法。看看这[所有谷歌字体的JSON数组](https://www.googleapis.com/webfonts/v1/webfonts?key=AIzaSyBwIX97bVWr3-6AIUvGkcNnmFgirefZ6Sw)应该基本上涵盖所有您的需求。 – Luca
看看fontSpy图书馆...可能会帮助https://github.com/patrickmarabeas/jQuery-FontSpy.js – charlietfl
luca kiebels建议可能会与bloom过滤器结合使用以大幅减少加载时间... –