case "top": if (dir2 == null) angle = tf.createAngle("0", Unit.deg, 1); else if (dir2.toString().equals("left")) angle = tf.createAngle("315", Unit.deg, 1); else if (dir2.toString().equals("right")) angle = tf.createAngle("45", Unit.deg, 1); break; case "right": if (dir2 == null) angle = tf.createAngle("90", Unit.deg, 1); else if (dir2.toString().equals("top")) angle = tf.createAngle("45", Unit.deg, 1); else if (dir2.toString().equals("bottom")) angle = tf.createAngle("135", Unit.deg, 1); break; case "bottom": if (dir2 == null) angle = tf.createAngle("180", Unit.deg, 1); else if (dir2.toString().equals("left")) angle = tf.createAngle("225", Unit.deg, 1); else if (dir2.toString().equals("right")) angle = tf.createAngle("135", Unit.deg, 1); break; case "left": if (dir2 == null) angle = tf.createAngle("270", Unit.deg, 1); else if (dir2.toString().equals("top")) angle = tf.createAngle("315", Unit.deg, 1);
protected TermAngle getAngleArg(Term<?> term) { if (term instanceof TermAngle) return (TermAngle) term; else if (isNumberArg(term) && getNumberArg(term) == 0) return CSSFactory.getTermFactory().createAngle(0.0f); else return null; }
@Override public TermList setValue(List<Term<?>> value) { super.setValue(value); List<Term<?>> args = getSeparatedValues(DEFAULT_ARG_SEP, false); if (args.size() == 2 && (skewX = getAngleArg(args.get(0))) != null && (skewY = getAngleArg(args.get(1))) != null) { setValid(true); } else if (size() == 1 && (skewX = getAngleArg(args.get(0))) != null) { skewY = CSSFactory.getTermFactory().createAngle(0.0f); setValid(true); } return this; } }
protected NodeData createLineStyle(float x1, float y1, float x2, float y2) { HtmlDivLine line = new HtmlDivLine(x1, y1, x2, y2); String bside = line.getBorderSide(); NodeData ret = CSSFactory.createNodeData(); TermFactory tf = CSSFactory.getTermFactory(); ret.push(createDeclaration("position", tf.createIdent("absolute"))); ret.push(createDeclaration("position", tf.createIdent("absolute"))); ret.push(createDeclaration("left", tf.createLength(line.getLeft(), unit))); ret.push(createDeclaration("top", tf.createLength(line.getTop(), unit))); ret.push(createDeclaration("width", tf.createLength(line.getWidth(), unit))); ret.push(createDeclaration("height", tf.createLength((float) line.getHeight(), unit))); ret.push(createDeclaration(bside + "-width", tf.createLength(line.getLineStrokeWidth(), unit))); ret.push(createDeclaration(bside + "-style", tf.createIdent("solid"))); String color = colorString(getGraphicsState().getStrokingColor()); ret.push(createDeclaration(bside + "-color", tf.createColor(color))); if (line.getAngleDegrees() != 0) { TermFunction rotate = tf.createFunction(); rotate.setFunctionName("rotate").add(tf.createAngle(String.valueOf(line.getAngleDegrees()), Unit.deg, 1)); ret.push(createDeclaration("transform", rotate)); } return ret; }