if ( weight != null && weight == IdentValue.BOLD ) {
if ( weight != null && ( weight == IdentValue.BOLD || weight == IdentValue.FONT_WEIGHT_700 || weight == IdentValue.FONT_WEIGHT_800 || weight == IdentValue.FONT_WEIGHT_900 )) {
    protected Font createFont( Context c, Font root_font, float size, IdentValue weight, IdentValue style, IdentValue variant ) {        //Uu.p("creating font: " + root_font + " size = " + size +        //    " weight = " + weight + " style = " + style + " variant = " + variant);        int font_const = Font.PLAIN;        if ( weight != null && weight == IdentValue.BOLD ) {            font_const = font_const | Font.BOLD;        }        if ( style != null && style == IdentValue.ITALIC ) {            font_const = font_const | Font.ITALIC;        }        // scale relative to java's default 72.0 dpi        float dpi = c.getRenderingContext().getDPI();        float dpiscale = dpi / 72f;        // scale vs font scale value too        float scale = c.getRenderingContext().getTextRenderer().getFontScale();        size = size * dpiscale * scale;        Font fnt = root_font.deriveFont( font_const, size );        if ( variant != null ) {            if ( variant == IdentValue.SMALL_CAPS ) {                fnt = fnt.deriveFont( (float)( ( (float)fnt.getSize() ) * 0.6 ) );            }        }        return fnt;    }