JS jQuery查看系统中安装的字体

1.下载插件:FontDetect插件  地址:http://www.lalit.org/lab/javascript-css-font-detect/

或者复制以下代码到fontdetect.js:

var Detector = function() {
    // a font will be compared against all the three default fonts.
    // and if it doesn‘t match all 3 then that font is not available.
    var baseFonts = [‘monospace‘, ‘sans-serif‘, ‘serif‘];

//we use m or w because these two characters take up the maximum width.
    // And we use a LLi so that the same matching fonts can get separated
    var testString = "mmmmmmmmmmlli";

//we test using 72px font size, we may use any size. I guess larger the better.
    var testSize = ‘72px‘;

var h = document.getElementsByTagName("body")[0];

// create a SPAN in the document to get the width of the text we use to test
    var s = document.createElement("span");
    s.style.fontSize = testSize;
    s.innerHTML = testString;
    var defaultWidth = {};
    var defaultHeight = {};
    for (var index in baseFonts) {
        //get the default width for the three base fonts
        s.style.fontFamily = baseFonts[index];
        h.appendChild(s);
        defaultWidth[baseFonts[index]] = s.offsetWidth; //width for the default font
        defaultHeight[baseFonts[index]] = s.offsetHeight; //height for the defualt font
        h.removeChild(s);
    }

function detect(font) {
        var detected = false;
        for (var index in baseFonts) {
            s.style.fontFamily = font + ‘,‘ + baseFonts[index]; // name of the font along with the base font for fallback.
            h.appendChild(s);
            var matched = (s.offsetWidth != defaultWidth[baseFonts[index]] || s.offsetHeight != defaultHeight[baseFonts[index]]);
            h.removeChild(s);
            detected = detected || matched;
        }
        return detected;
    }

this.detect = detect;
};

2.页面调用方法

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <script type="text/javascript" src="js/fontdetect.js"></script>
    <script type="text/javascript">
        window.onload = function() {
            var detective = new Detector();
            alert(detective.detect(‘方正兰亭准黑简体‘));
        };
    </script>
</head>
<body>
</body>
</html>

时间: 2024-11-03 21:24:56

JS jQuery查看系统中安装的字体的相关文章

Photoshop脚本 &gt; 遍历系统中的所有字体

源自:http://coolketang.com/tutorials/menu1lesson7.php 本节将演示如何使用脚本,查看系统中所有可用字体.首先创建一个空白的脚本文档,并保存在硬盘上某个位置. 并输入脚本代码: var fonts   = app.fonts; var message = ""; 新建一个变量[fonts],它是一个数组,用来存储系统中的所有字体.新建一个变量[message],它的默认值为空.这个变量将在后面的代码中起到保存字体信息的作用. for(var

Linux系统中安装MySQL数据库操作手册

Linux系统中MySQL数据库安装手册 一.安装概述: 在Linux操作系统中安装MySQL数据库是一个我们必须要掌握的一门技术,也决定了你以后找工作的薪资待遇,所以你知道它的厉害了吧!学会安装只是第一步,你还得学好数据库的基本操作,以及搭建一个数据库的主从配置等等.这些我都会在后面的博文中说到.下面我就简单的写一些安装MySQL数据库的一些步骤,仅供参考,如有什么不妥的地方,还请见谅! 二.安装步骤: (一)基本准备工作 1.打开虚拟机,在虚拟机中下载好最新版的MySQL数据库的压缩包.在M

在RedHat Linux系统中安装和配置snmp服务

检查系统是否安装snmp服务 # rpm -qa|grep snmp net-snmp-5.3.2.2-17.el5 net-snmp-perl-5.3.2.2-17.el5 net-snmp-devel-5.3.2.2-17.el5 net-snmp-libs-5.3.2.2-17.el5 net-snmp-utils-5.3.2.2-17.el5 net-snmp-libs-5.3.2.2-17.el5 net-snmp-devel-5.3.2.2-17.el5 SNMP服务安装后会有以上安

在LINUX系统中安装KVM虚拟化

首先CPU要支持虚拟化(Intel是vmx,AMD是svm)[[email protected] ~]# egrep '(vmx|svm)' --color /proc/cpuinfo确保BIOS里开启VT,如果无法安装会有未开启虚似化的提示,去BISO里开启Intel(R) Virtualization Tech [Enabled] 安装虚拟化套件,由于安装包较多,应该先配置好YUM库,然后用YUM安装虚似化的四个组,完装完无法打开有可能是你少装包了,检查一下是不是有错字.[[email pr

CentOS-6.4-DVD系统中安装Oracle-11.2.0.4

完整版见https://jadyer.github.io/2014/05/18/centos-install-oracle/ /** * CentOS-6.4-DVD系统中安装Oracle-11.2.0.4 * ---------------------------------------------------------------------------------------------------------------------- * [前言] * 本来是在CentOS-6.4-m

Linux 系统中安装Mysql_5.6

                                  Linux 系统中安装Mysql_5.6 安装包下载地址(http://pan.baidu.com/s/1o8G5qmI) 1.Linux 创建普通用户并分配权限(root用户操作): 创建用户组: groupadd mysql 创建用户并且分配组: useradd -g  mysql   mysql 设置用户密码:passwd  mysql 给用户组授权:chown -R mysql:mysql /usr/local/  2.

虚拟机上在Linux系统中安装JDK的方法

1.   mkdir /soft      (创建一个目录,用于存放安装软件 ) 2.     cd /soft      (切换到soft目录 ) 3. rz(从windows中选择安装包) 4.rmp  -ivh jdk-7u45-linux-x64.rpm   (安装JDK) 5.find / -name 'jdk' 6.vi /etc/profile  (编辑环境变量)  在profile的最后写下面的地址 export JAVA_HOME=/usr/java/jdk1.7.0_45ex

Windows10系统中安装Rational Rose

       Rational Rose是Rational公司出品的一种面向对象的统一建模语言的可视化建模工具.用于可视化建模和公司级水平软件应用的组件构造.        Rational Rose 是一个完全的.具有能满足所有建模环境(Web开发,数据建模,Visual Studio和 C++ )灵活性需求的一套解决方案.Rose 允许开发人员,项目经理,系统工程师和分析人员在软件开发周期内在将需求和系统的体系架构转换成代码,消除浪费的消耗,对需求和系统的体系架构进行可视化,理解和精练.通过

Linux(CentOS 6.4)系统中安装mplayer

整了一个上午终于把mplayer安装上了,我的系统是centos 6.4,真是不容易啊! 一.准备工作 需要的安装包及下载地址:1.mplayer源代码包(MPlayer-1.0rc4.tar.bz2)下载:http://www.mplayerhq.hu/MPlayer/releases/2.解码器安装包(all-20110131.tar.bz2)下载:http://www.mplayerhq.hu/MPlayer/releases/codecs/3.win32解码器安装包(windows-al