本文整理汇总了Java中javax.swing.text.Style.getAttribute方法的典型用法代码示例。如果您正苦于以下问题:Java Style.getAttribute方法的具体用法?Java Style.getAttribute怎么用?Java Style.getAttribute使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类javax.swing.text.Style
的用法示例。
在下文中一共展示了Style.getAttribute方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getAllFontFamiliesInStyleSheets
import javax.swing.text.Style; //导入方法依赖的package包/类
public String[] getAllFontFamiliesInStyleSheets() {
Vector families = new Vector();
StyleSheet styles = getStyleSheet();
Enumeration styleNames = styles.getStyleNames();
while (styleNames.hasMoreElements()) {
String name = (String) styleNames.nextElement();
Style style = styles.getStyle(name);
Enumeration attrNames = style.getAttributeNames();
while (attrNames.hasMoreElements()) {
Object n = attrNames.nextElement();
if (n.toString().equals("resolver")) {
Style nst = (Style) style.getAttribute(n);
Enumeration nAttrNames = nst.getAttributeNames();
while (nAttrNames.hasMoreElements()) {
Object nAttrName = nAttrNames.nextElement();
if (nAttrName.toString().toLowerCase().equals(
"font-family")) {
Object value = nst.getAttribute(nAttrName);
String values[] = value.toString().toLowerCase()
.split(",");
for (int i = 0; i < values.length; i++) {
String val = values[i].trim();
if (!families.contains(val))
families.add(val);
}
}
}
}
}
}
String[] familiesArray = (String[]) families.toArray(new String[] {});
Arrays.sort(familiesArray);
return familiesArray;
}
示例2: trouverProprieteCSS
import javax.swing.text.Style; //导入方法依赖的package包/类
public Object trouverProprieteCSS(Attribute attr, Element element) {
AttributeSet as;
Object attrValue = null;
Object style;
StyleSheet styles;
Style rule;
NRC_HTMLTag tag = null;
if (element == null)
return null;
String elementName = element.getName();
if (elementName.equals("p-implied")) {
Element parent = element.getParentElement();
return trouverProprieteCSS(attr,parent);
}
as = element.getAttributes();
// Vérifier si un attribut STYLE est spécifié avec la propriété 'attr'
if (as.isDefined(HTML.Attribute.STYLE)) {
style = as.getAttribute(HTML.Attribute.STYLE);
StyleSheet ss = new StyleSheet();
AttributeSet ssrule = ss.getDeclaration(style.toString());
if (ssrule.isDefined(attr))
attrValue = ssrule.getAttribute(attr).toString();
}
if (attrValue != null) {
return attrValue;
}
// Si ce n'est pas le cas, vérifier si un style a été défini pour
// cet élément dans une feuille de style (soit par l'élément STYLE
// au début du fichier, soit par une feuille de style externe).
styles = getStyleSheet();
tag = new NRC_HTMLTag(elementName);
rule = styles.getRule(tag, element);
if (rule != null) {
attrValue = rule.getAttribute(attr);
}
if (attrValue != null) {
return attrValue;
}
// Si ce n'est pas le cas, vérifier si un style a été défini pour cet
// élément avec un sélecteur contenant un ':'
Vector attrValuesVector = new Vector();
Pattern p = Pattern.compile("^[^:]+:");
Enumeration rules = styles.getStyleNames();
while (rules.hasMoreElements()) {
String name = (String) rules.nextElement();
Matcher mp = p.matcher(name);
rule = styles.getStyle(name);
if (mp.lookingAt()) {
attrValue = rule.getAttribute(attr);
if (attrValue != null
&& !attrValuesVector.contains(attrValue.toString()))
attrValuesVector.add(attrValue.toString());
}
}
attrValue = null;
if (attrValuesVector.size() != 0) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < attrValuesVector.size(); i++)
sb.append(attrValuesVector.elementAt(i).toString()).append(" ");
attrValue = sb.toString().trim();
}
return attrValue;
}