f = c.getFontResolver().resolveFont(c,family,size,weight,style);
f = c.getFontResolver().resolveFont(c,families,size,weight,style);
public static Font getElementFont(Context c, Element el) {    // TODO: need to discuss what sort of caching should be going on here, because relative    // datatypes like EM and EX depend in part on the 'current' font for an element (PWW 14/08/04)    //u.p("testing node: " + e);    Font f = c.getGraphics().getFont();    if(quick) {        //f = f.deriveFont((float)((int)(Math.random()*10)));        return f;    }    if(el.getParentNode().getNodeType() == el.DOCUMENT_NODE) {        //u.p("ended up at the top somehow!: ");        return c.getGraphics().getFont().deriveFont((float)10);    }    // calculate the font size    // look up the parent and use it's font size to scale against    // joshy: this will fail if the parent also has a relative size    //  need to fix this by passing down the enclosing block's font size    //  in the context    Element par = (Element)el.getParentNode();    float parent_size = c.css.getFloatProperty(par,"font-size",true);    float size = c.css.getFloatProperty(el,"font-size",parent_size,true);    String weight = c.css.getStringProperty(el,"font-weight");    String[] family = c.css.getStringArrayProperty(el,"font-family");    //u.p("families");    //u.p(family);    /*    if(!family[0].equals("sans-serif")) {        //u.p("family = ");        //u.p(family);        //u.p("");    }    */    String style = c.css.getStringProperty(el,"font-style");    // CLEAN System.out.println("family=" + family + ", size=" + size + ", weight=" + weight + ", style=" + style);    f = c.getFontResolver().resolveFont(c,family,size,weight,style);    // calculate the font color    c.getGraphics().setColor(c.css.getColor(el));    return f;}