Example for using CSS Styles Filter
Posted: Fri Apr 24, 2009 2:27 am
Can anyone provide an small example of how to work with the StylesFilter interface?
Many thanks,
/d
Many thanks,
/d
Code: Select all
/**
* @see ro.sync.ecss.extensions.api.StylesFilter#filter(ro.sync.ecss.css.Styles, ro.sync.ecss.extensions.api.node.AuthorNode)
*/
public ro.sync.ecss.css.Styles filter(Styles styles, AuthorNode authorNode) {
//Use font size of 8 for "para"
if(authorNode.getName().equals("para")) {
ro.sync.exml.view.graphics.Font original = styles.getFont();
ro.sync.exml.view.graphics.Font modified = new ro.sync.exml.view.graphics.Font(original.getName(), original.getStyle(), 8);
styles.setProperty(Styles.KEY_FONT, modified);
}
//Use foreground color red for "bold"
if(authorNode.getName().equals("bold")) {
ro.sync.exml.view.graphics.Color red = ro.sync.exml.view.graphics.Color.COLOR_RED;
styles.setProperty(Styles.KEY_FOREGROUND_COLOR, red);
}
//Use left border width of 5 pixels for "italic"
if(authorNode.getName().equals("italic")) {
styles.setProperty(Styles.KEY_BORDER_LEFT_WIDTH, new Integer(5));
}
return styles;
}