Вход

Просмотр полной версии : Как определить системные шрифты посетителя?


Skeptik
18.06.2014, 15:24
Есть у кого то рабочие скрипты как определить системные шрифты посетителя зашедшого на мой сайт(облазил весь инет так и не нашел).

Только установленный вариант нашел на сайте panopticlick.eff.org но не могу понять как он работает???

Через flash ? ActiveX ? или CSS???

Конкретно JS-код, проверяющий все, находится в
1) panopticlick.eff.org/resources/plugin-detect-0.6.3.js
2) panopticlick.eff.org/resources/deployJava.js
3) panopticlick.eff.org/resources/jquery.flash.js
Результат отправляется POST-запросов
panopticlick.eff.org/index.php?action=ajax_log_clientvars

Читал также что если через flash то это просто баг.

Кто может помочь и в какую сторону лучше двигатся что бы определить шрифты посетителя???

Aetae
18.06.2014, 19:14
Все шрифты только через flash.
Через js можно только проверить есть ли у клиента шрифты из вручную заданного списка.

Flash решение отлично гуглится "javascript flash font list", javascript решение основано тупо на сравнении ширины и высоты span которому по списку подставляются шрифты и тоже легко гуглится.

MallSerg
18.06.2014, 21:11
<embed height="1" flashvars="" pluginspage="http://www.adobe.com/go/getflashplayer" src="https://panopticlick.eff.org/resources/fonts2.swf" type="application/x-shockwave-flash" width="1" swliveconnect="true" id="id" name="flashfontshelper" >
<script>
function go (){
obj = document.getElementById("id")
if (typeof obj.GetVariable != "undefined") {
fonts = obj.GetVariable("/:user_fonts");
fonts = fonts.replace(/,/g,", ");
}else{ fonts = "ошибка :'(("};
alert(fonts);
}
</script><input type="button" onclick="go()" value="шрифты?">
флешку лучше скачать и положить на тот же домен