/*
 * Copyright (c) 2008 David Crawshaw <david@zentus.com>
 *
 * Permission to use, copy, modify, and distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 */

/*
 * Test for the existence of a font on the client by comparing the
 * dimensions of a test string against the default serif dimensions.
 */
testfont = function(font) {
    var p = document.createElement("div");
    var c = document.createElement("div");
    p.appendChild(c);
    document.body.appendChild(p);

    p.style.fontFamily = "serif";
    c.style.fontSize = "48px";
    c.innerHTML = "wwwwlwwww";
    var origWidth = c.offsetWidth;
    var origHeight = c.offsetHeight;
    c.style.fontFamily = font;
    var hasFont = c.offsetWidth  != origWidth
               || c.offsetHeight != origHeight;

    document.body.removeChild(p);
    return hasFont;
}
