List of usage examples for org.w3c.dom.css CSSStyleDeclaration getPropertyValue
public String getPropertyValue(String propertyName);
From source file:com.gargoylesoftware.htmlunit.javascript.host.css.ComputedCSSStyleDeclaration.java
/** * Makes a local, "computed", modification to this CSS style. * * @param declaration the style declaration * @param selector the selector determining that the style applies to this element *//*w ww . jav a 2 s . c om*/ public void applyStyleFromSelector(final org.w3c.dom.css.CSSStyleDeclaration declaration, final Selector selector) { final SelectorSpecificity specificity = new SelectorSpecificity(selector); for (int k = 0; k < declaration.getLength(); k++) { final String name = declaration.item(k); final String value = declaration.getPropertyValue(name); final String priority = declaration.getPropertyPriority(name); applyLocalStyleAttribute(name, value, priority, specificity); } }
From source file:org.castafiore.ecm.Main.java
public static String Parse(File css, String name) throws Exception { String result = ""; InputStream stream = new FileInputStream(css); InputSource source = new InputSource(new InputStreamReader(stream)); CSSOMParser parser = new CSSOMParser(); CSSStyleSheet stylesheet = parser.parseStyleSheet(source, null, null); CSSRuleList ruleList = stylesheet.getCssRules(); for (int i = 0; i < ruleList.getLength(); i++) { CSSRule rule = ruleList.item(i); if (rule instanceof CSSStyleRule) { CSSStyleRule styleRule = (CSSStyleRule) rule; String selector = styleRule.getSelectorText().replace("*", "").replace("html", "").trim(); StringBuilder b = new StringBuilder(); if (selector.startsWith("body")) { selector = "." + name; b.append(selector);/*from w w w .jav a2 s . com*/ } else { String[] asSelector = StringUtils.split(selector, ","); for (String s : asSelector) { if (b.length() > 0) { b.append(" , "); } // if(s.trim().startsWith("a:")){ // // } s = s.replace("#", ".").trim(); s = "." + name + " " + s; b.append(s); } } System.out.println(b.toString() + "{"); result = result + b.toString() + "{\n"; CSSStyleDeclaration styleDeclaration = styleRule.getStyle(); for (int j = 0; j < styleDeclaration.getLength(); j++) { String property = styleDeclaration.item(j); String value = styleDeclaration.getPropertyValue(property); System.out.println("\t" + property + ":" + value); result = result + "\t" + property + ":" + value + ";\n"; } result = result + "}\n"; System.out.println("}"); } } if (stream != null) stream.close(); return result; }
From source file:org.kie.workbench.common.stunner.svg.gen.translator.css.SVGStyleTranslator.java
private static StyleDefinition parseStyleDefinition(final CSSStyleDeclaration declaration) { final StyleDefinitionImpl.Builder builder = new StyleDefinitionImpl.Builder(); boolean isFillNone = false; boolean isStrokeNone = false; for (int j = 0; j < declaration.getLength(); j++) { final String property = declaration.item(j).trim(); final String value = declaration.getPropertyValue(property).trim(); switch (property) { case OPACITY: builder.setAlpha(SVGAttributeParser.toPixelValue(value)); break; case FILL: if (ATTR_VALUE_NONE.equals(value)) { isFillNone = true;//w w w . j a va 2 s .com } else { builder.setFillColor(SVGAttributeParser.toHexColorString(value)); } break; case FILL_OPACITY: builder.setFillAlpha(SVGAttributeParser.toPixelValue(value)); break; case STROKE: if (ATTR_VALUE_NONE.equals(value)) { isStrokeNone = true; } else { builder.setStrokeColor(SVGAttributeParser.toHexColorString(value)); } break; case STROKE_OPACITY: builder.setStrokeAlpha(SVGAttributeParser.toPixelValue(value)); break; case STROKE_WIDTH: builder.setStrokeWidth(SVGAttributeParser.toPixelValue(value)); break; case STROKE_DASHARRAY: builder.setStrokeDashArray(value); break; case FONT_FAMILY: builder.setFontFamily(value.trim()); break; case FONT_SIZE: builder.setFontSize(SVGAttributeParser.toPixelValue(value)); break; } } if (isFillNone) { builder.setFillAlpha(0); } if (isStrokeNone) { builder.setStrokeAlpha(0); } return builder.build(); }
From source file:org.kie.workbench.common.stunner.svg.gen.translator.css.SVGStyleTranslatorHelper.java
private static StyleDefinition parseStyleDefinition(final CSSStyleDeclaration declaration) { final StyleDefinitionImpl.Builder builder = new StyleDefinitionImpl.Builder(); boolean isFillNone = false; boolean isStrokeNone = false; for (int j = 0; j < declaration.getLength(); j++) { final String property = declaration.item(j).trim(); final String value = declaration.getPropertyValue(property).trim(); switch (property) { case OPACITY: builder.setAlpha(SVGAttributeParserUtils.toPixelValue(value)); break; case FILL: if (ATTR_VALUE_NONE.equals(value)) { isFillNone = true;/*ww w . j a v a 2 s .c om*/ } else { builder.setFillColor(SVGAttributeParserUtils.toHexColorString(value)); } break; case FILL_OPACITY: builder.setFillAlpha(SVGAttributeParserUtils.toPixelValue(value)); break; case STROKE: if (ATTR_VALUE_NONE.equals(value)) { isStrokeNone = true; } else { builder.setStrokeColor(SVGAttributeParserUtils.toHexColorString(value)); } break; case STROKE_OPACITY: builder.setStrokeAlpha(SVGAttributeParserUtils.toPixelValue(value)); break; case STROKE_WIDTH: builder.setStrokeWidth(SVGAttributeParserUtils.toPixelValue(value)); break; } } if (isFillNone) { builder.setFillAlpha(0); } if (isStrokeNone) { builder.setStrokeAlpha(0); } return builder.build(); }
From source file:org.xwiki.rendering.internal.wiki.XWikiWikiModel.java
/** * Extracts the specified image dimension from the image parameters. * * @param dimension either {@code width} or {@code height} * @param imageParameters the image parameters; may include the {@code width}, {@code height} and {@code style} * parameters//from ww w . jav a2 s . c o m * @return the value of the passed dimension if it is specified in the image parameters, {@code null} otherwise */ private String getImageDimension(String dimension, Map<String, String> imageParameters) { // Check first if the style parameter contains information about the given dimension. In-line style has priority // over the dimension parameters. String value = null; String style = imageParameters.get("style"); if (StringUtils.isNotBlank(style)) { try { CSSStyleDeclaration sd = this.cssParser .parseStyleDeclaration(new InputSource(new StringReader(style))); value = sd.getPropertyValue(dimension); } catch (IOException e) { // Ignore the style parameter. } } if (StringUtils.isBlank(value)) { // Fall back on the value of the dimension parameter. value = imageParameters.get(dimension); } return value; }